incorrect, the visual studio solution file has build configuration details that msbuild will not honour (e.g. you can specify certain build order parameters), as I found out recently with a project I took over. (I was wondering why building from the command line with ms build produced different results).
Sheet JS is quite amazing, but another, simple approach to consider is based around the fact when you copy a range from Excel, it's plain-text clipboard format is tab-separated values. Get the users to copy their data and paste it into a text box with an on-paste handler that parses the data into a preview table with validation so they can see if they've got the columns right before hitting submit. Simple, 100-ish lines of JS, broad browser support.