I hate using Excel for this reason. ALMOST all functions are translated, so you're never sure what to look for. If you find a solution for a problem online? Doesn't work, you'd have to rewrite it in your language.
And you can't even switch the language in settings, because it's tied to the OS language (maybe you can in recent versions, haven't bothered to check for a while).
This is why I never touch language setting in any OS. It's guaranteed I'll have some problem down the line because I can't search the problem or understand the solution if error crops up someday, because the menus are different.
This is why it's good to have unique error codes in addition to messages. It also helps with error monitoring as you can aggregate errors by their error code rather than message (which can have variables in it, different languages, etc).
Error codes can be useful but I find that a lot of vendors using them rely on the code too much to classify errors as identical. Usually the variables do matter, e.g. which file couldn't be opened or which action was attempted by whom that got a permission denied error.
Not sure about VBA, but Excel formulas are actually saved in English and translated on file load. It doesn't translate strings though, so EVALUATE only works for users with the same language as the author.
I am sceptical of natural language programming in general but I am also fairly certain that you would have to do a lot more than just translate the keywords to get something that looks natural in another language. Word order is different in many languages for one.