Тема: Локализация макросов
Хочу раскрыть тему, чтобы упростить локализацию макросов. Надеюсь на Вашу помощь, поскольку тема полезна всем, кто пишет макросы общего пользования.
А конкретно, где в макросах Word используются символы региональных параметров Windows? Особенно интересуют:
- разделитель списков (обычно ";" в русской Windows)
- разделитель целой и дробной части (1000,00)
- разделитель групп разрядов (100 000 000)
- разделитель даты (01.01.10)
- разделитель времени (10:30)
Например, рассмотрим поиск с подстановочными знаками:
Range.Find.MatchWildcards = True
Range.Find.Text = "z{1;}"
Здесь символ ";" является региональным параметром и задается в настройках Windows. Локализованный код, работающий с любыми настройками Windows, будет такой:
Range.Find.Text = Replace("z{1;}", ";", Application.International(wdListSeparator))
Начну список строковых параметров, где используются региональные символы:
Range.Find.Text (MatchWildcards = True)
Range.Find.Replacement.Text (MatchWildcards = True)
Параметр Format функции VBA.Format()
...
Есть идеи, по оптимизации процесса локализации?