Форумы HiProg.com - MS ACCESS, VBA, VB

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

ник: lvm
Доброго времени суток.

Понадобилось мне в WORDе осуществить поиск в макросе по спецсимволу. В кодировке ДОС этот символ имеет код 196. Это один из тех что были придуманы для рисования табличек в ДОСе.
Сам WORD отображает эти символы. Путем нажатия Alt и набора на цифровой клавиатуре также рисует его правильно. Но дальше - никак.
Даю в параметре поиска Chr(196) - не находит. Решил определить код в макросе, считывая текущий символ:
Selection.TypeText Text:=Str(Asc(Selection.Characters(1).Text))
Пишет число 45. Это код тире. Соответственно если набрать Alt+45, отображает тире.
Если распечатать это символ:
Selection.TypeText Text:=Chr(196)
выдаёт кракозябру, похожую на "А".
Понятно, что у WORDа с этими кодами концы с концами не сходятся, но может все-таки можно как-нибудь это обойти?
Я сумел получить правильный символ в макросе только путем считывания из текущей позиции:
St = Selection.Characters(1).Text
Но это во многих случаях неприменимо, или неудобно, так как перед запуском макроса нужно установить курсор в позицию с нужным символом.

Поделитесь, если кто решил аналогичную проблему.


Ваше имя:

Пароль:

Цитировать: [quote][/quote] Код: [code][/code]
Жирный: [b][/b] Наклонный: [i][/i]
URL: [url][/url] 

Сообщение:

 Размер файла не более 50 Кбт. Большие файлы можно размещать на www.slil.ru

Прикрепить:

 

Для вставки смайлов в текст щелкните по значку.