> but your only tool is Excel instead of some programming language
There is little difference between (if (> a b) c d) and =IF((A1 > B1), C1, D1)
Excel is the most widely installed functional programming language IDE.
> but your only tool is Excel instead of some programming language
There is little difference between (if (> a b) c d) and =IF((A1 > B1), C1, D1)
Excel is the most widely installed functional programming language IDE.
Change the language of your Windows system to anything but English and then open your Excel file with formulas again.
When I worked at a university's tech support, this was a recurring problem. People made grade lists in Excel, then imported them into the digital learning environment, which occasionally was set to a different language. This meant that the decimal point would be disregarded, and e.g. an 8.5/10 would be imported as an 85 (which got clamped to 10). Maximum grades for everyone, confused students and teachers :')
Even better: grades range from 1.0 (best) to 5.0 (failed) with partial grades (.3, .7) in-between. Caused a few problems when a 1.3 got interpreted as the first May and converted to the number of days between the epoch and the first ofay of that year.
I don't get your point
programming languages aren't allowed to be in non-english somehow?
ok, what happens? (I'm not messing around on my system right now ...)
Localization of formulas. On my system, all parameter-separating commas have to be replaced with semicolons.
That is shocking. Excel is used by every international organization, probably. How do they manage the localization?
Maybe the files store the formulas in an intermediate format that can be localized by the client
That sounds correct. This issue would be when the decimal separator matches the argument separator. In that situation =IF(A1 > 42.1, B1, C1) would be equivalent to =IF(A1 > 42,1; B1; C1)
The possibility of incorrect parsing of equation with a variadic function that contains a decimal number in the equation.
However, this is a localization as even the functions change names.
https://www.reddit.com/r/excel/comments/1flsvyu/separator_co...
This suggests client localization that is rendered differently with different language settings.The GGP says,
> On my system, all parameter-separating commas have to be replaced with semicolons.
That implies the user has to manually change the syntax.
The formulae are indeed stored in the same format, regardless of language. For rendering and parsing in the UI they use translated function names and the field separator (commma in English, but semicolon in many other languages because decimal numbers use a comma there).
It does irk me a bit (though not as much as the translated VBA back in the day). But that's probably because I know English, I often look for solutions to my problems in English, not in my native language, and then would have to mentally translate that back. But that's perhaps a burden for programmers more than for typical users.
A few thoughts:
• it's been that way for decades, at this point. So changing it would annoy a lot of users
• the problem with comma and semicolon would remain unless you want entering numbers normally and within a formula to be different. I'm not sure that's good in a product built around numbers (and often numbers that should be written and formatted like any other number in that country).
• making it configurable might work, but that then requires more testing, although sometimes it's not clear how much testing Microsoft is still doing, so that might not be much of a point. But adding options also has UX limits and not just in the length of the settings screen.
LibreOffice Calc has an option to force English function names regardless of the current localization. I guess Excel should have something similar, too¹.
Fun fact: in European and Brazilian Portuguese, the same function names can refer to different things. European SUBSTITUIR² is REPLACE (Brazilian MUDAR), Brazilian SUBSTITUIR³ is SUBSTITUTE (European SUBST).
¹ I've found this solution https://superuser.com/questions/1908516/how-to-change-the-la... but I haven't tested it since I don't have MS Excel at hand to check
² https://support.microsoft.com/pt-pt/office/fun%C3%A7%C3%A3o-...
³ https://support.microsoft.com/pt-br/office/substituir-fun%C3...
Classic one++ (-:
It even has LAMBDA now: https://support.microsoft.com/en-us/office/lambda-function-b...