6

В настоящее время я нахожусь во Франции и использую компьютер, на котором все программы Office написаны на французском языке.

Мне нужно использовать макрос, который был написан на английском языке VBA, но он не работает.

Я предполагаю, что проблема с языком возникает так же, как и при попытке использовать формулы Excel для английского языка во французской версии (например, = sum is = somme)

Есть ли способ сделать это?

2 ответа2

4

У вас есть два варианта, которые включают переписывание кода VBA.

  • Первый вариант: при доступе к Range.Formula , замените его на Range.FormulaLocal . Локализованная версия формул будет переведена Excel на английскую версию, которую он использует внутри. Это, конечно, заставит ваши макросы работать только на французском языке / языке.

  • Второй вариант: вручную перевести каждую формулу, жестко закодированную в вашем VBA, на английский. Это заставит ваши макросы работать в любых локалях / языках Excel.

1

У меня была похожая проблема с инструментом Excel Macro, написанным в США, и я хотел использовать его в Германии. Похоже, инструмент запустился в цикле после запуска, поэтому он не заканчивался.

Наконец-то я мог бы решить эту проблему, изменив стандартное значение даты, времени и чисел в Windows по стандарту США, как описано здесь . Поэтому, вероятно, код инструмента VBA работает с некоторыми данными в стандартных форматах США и не будет работать в системах с иностранными форматами.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .