什么设置导致 Excel VBA 将命名的 Range.Style "Percent" 更改为 "Per cent"?

What setting is causing Excel VBA to change the named Range.Style "Percent" to "Per cent"?

我有一个 xlsm 工作簿,在响应 ThisWorkbook.Styles("Percent") 时出现“下标超出范围”错误。一个系统上的值在另一个系统上没有。在抛出错误的系统上,名为“Percent”的样式似乎已被名为“Percent”的样式所取代。我怀疑这源于两台计算机上不同的语言设置。工作系统始终设置为英语(英国),但我无法确定哪种设置或设置组合会导致 Excel 在没有警告的情况下在内部重命名样式。将某些设置更改为英语(美国)似乎很重要,我害怕这样做会弄乱我的计算机。谁能告诉我这是怎么回事?

经过进一步调查,我现在有了答案 - 一个意想不到的答案。

我的主机的所有 Windows 设置都设置为英语(英国)。在我的开始菜单中,在 Microsoft Office 工具下,有一个 Office 语言首选项应用程序,其中首选 Office 显示语言设置为匹配 Microsoft Windows [English]。 Excel 使用这些设置显示名为“百分比”的样式。

在具有相同初始设置的测试系统上,我添加了名为英语(英国)的 Office 显示语言。将首选 Office 显示语言设置为 Match Microsoft Windows [English (United Kingdom)] Excel 显示名为“Percent”的样式,但没有名为“Percent”的样式。我必须添加一种名为英语(美国)的 Office 显示语言并将其设置为首选项才能再次看到名为“百分比”的样式。

你无法弥补。 “Match Microsoft Windows [English]”在 Windows 全面设置为英语(英国)的系统上非常具有误导性。