Автор Тема: Как задать кодовую страницу в новом документе  (Прочитано 232 раз)

Оффлайн Посетитель 04.10.2021

  • Посетитель форума
  • Сообщений: 5
Я создаю новый Word-документ средствами VBA. У меня немецкая Windows, т.е. кодовая страница 1252. Все русские буквы отображаются неверно. Как мне указать кодовую страницу 1251?

Оффлайн Администратор

  • Administrator
  • Сообщений: 1939
Каким кодом вы создаёте ворд-файл?

Оффлайн Посетитель 04.10.2021

  • Посетитель форума
  • Сообщений: 5
Я программирую на FoxPro. Язык позволяет использовать свойства и методы объекта Word.

Оффлайн Администратор

  • Administrator
  • Сообщений: 1939
сегодня - завтра посмотрю, заранее не знаю, смогу ли помочь
файл я ваш удалил с форума, но у меня он есть

Оффлайн Администратор

  • Administrator
  • Сообщений: 1939
По этой теме не смогу помочь.
Вообще, если использовать только VBA, а не ещё какой-то язык программирования, то в коде макроса искажается русский текст.
Например, если у меня Виндоус русский, то русский текст выглядит правильно, а если у другого человека Виндоус английский, то русский текст искажается. В этом случае я не использую в коде русский текст.

Ваша же система мне не известна. У меня нет глубоких знаний программирования и как работает компьютер.

На этом форуме отвечаю только я.

Оффлайн Посетитель 04.10.2021

  • Посетитель форума
  • Сообщений: 5
Спасибо за ответ.
Вообще странная ситуация. Кодовая станица в моём случае – это раскладка клавиатуры. Когда я запускаю Word – я могу печатать на любом языке, установленном в системе, просто переключая раскладку клавиатуры. А аналога этому действию в VBA я не нашёл.

Оффлайн Посетитель 04.10.2021

  • Посетитель форума
  • Сообщений: 5
Решение найдено, но оно не программное и вообще лежит за пределами FoxPro и VBA.
Нужно в региональных настройках операционной системы указать текущий язык программ, не поддерживающих Unicode, - русский. Тогда FoxPro сможет передавать в Word русский текст, но уже не сможет немецкий.
Да, а переключать раскладку клавиатуры можно с помощью loWord.Keyboard(1049) – на русский язык.