Почему VBA Excel-я при переводе формулы с английского на немецткий изменяет её
От: zeevturka  
Дата: 16.02.21 08:10
Оценка: :)
Здравствуйте!

У меня есть вопрос:
Почему VBA Excel-я при переводе формулы VLOOKUP с английского на немецткий изменяет B:C на BEZUG! её?
Начальная формула:
Selection.FormulaLocal = GetLocalizedFormula("= SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(VLOOKUP($H2;translation_en_GB!B:C;2;""FALSE"");""%1"";$I2);""%2"";$J2);""%3"";$K2);""%4"";$L2)")

Функция перевода:
Function GetLocalizedFormula(formula As String)
' returns the English formula from the parameter in the local format
Dim temporary As String
temporary = Range("D1").formula
Range("D*").formula = formula
Dim result As String
result = Range("D*").FormulaLocal
Range("D*").formula = temporary
GetLocalizedFormula = result
End Function

После перевода:
= WECHSELN(WECHSELN(WECHSELN(WECHSELN(SVERWEIS($H2;translation_en_GB!#BEZUG!;2;"FALSCH");"%1";$I2);"%2";$J2);"%3";$K2);"%4";$L2)

Если я меняю вручную #BEZUG! на B:C, то работает так как надо.

Как это исправить?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.