Excel is an easy tool to start to get into coding for non-programmers. It's been used and abused all over the world, in offices, education, etc. I do agree, that after a while it'll probably become limiting. It's a good prototyping environment though and I wouldn't underestimate what you can learn by using it in early stages of learning.
Excel doesn't mean you must use someone else's sheets or ActiveX code. As userque suggested above you can program anything using VBA, ie. using that for interfacing. This is how I first got started several years ago. However, for my analysis I used too many rows and cells. Excel is quite well optimized, but starts to have scalability issues beyond filesize of 150-200 MB. So benefited then from moving to Ninjatrader, which I've since left for a more general purpose build-from-scratch project, first using ruby and now Golang. It's possible for curious souls, but I wouldn't generally recommend learning Golang as a first language.
When you know what you need, is the time you'll benefit from going more general-purpose. Of course, whatever recommendations, only oneself can really take the necessary steps and learn what works best. The challenge is matching the technical solution to functional requirements of a trading system, which is impossible if the trading system is very immature and in experimental stages. So I think it's actually beneficial to take babysteps rather than putting in too much work and time overdesigning and overoptimizing in the early stages.