What defines what a programming language is?
You will find several settings. At the Wikipedia :
A programming language is a standardized method for communicating instructions to a computer. 1 It is a set of syntactic and semantic rules used to define a computer program. 2 [Note 1] It allows a programmer specify precisely what data a computer will act on, how this data will be stored or transmitted, and what actions should be taken under various circumstances. Programming languages can be used to accurately express algorithms.
If we continue reading the article (even in English ) we will find a lot of information that helps define what is expected of a language programming and even the various classifications of them. We noticed that we can not get caught up in the classic way we know languages like C, Java, C #, JavaScript, PHP, etc.
Excel fits into these settings.
One of the criteria for defining a programming language is whether it is Turing Complete >. This is the only object criteria I know to define whether the language has full programming capability. Some people may disagree. I have never found a definitive canonical definition to indicate this. I have also never seen anything plausible that would indicate that this is not a good criterion.
If there is an objective criterion, more subjective criteria are obviously not good for deciding something. Does anyone know a better criterion?
Then I wonder how anyone in their right mind can consider that software that can solve any computational problem in a fully programmable way without the need for outside help may not be a programming language? It is more controversial to say that SQL (default) is a programming language, because there are problems that it can not solve.
So Excel (not VBA, which obviously is too) is a programming language. If you disagree, okay. It will not change anyone's life. But if possible, demonstrate where there is a failure in this definition. I never found it.
Some places where this is discussed: