Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.11.2011, 15:03   #1
DolgopolovaOlga
 
Регистрация: 27.09.2011
Сообщений: 8
По умолчанию Скрыты символы форматирования

Подскажите, пожалуйста.
Я читаю текст, и в строке попадаются символы форматирования, которые не читаются нормально, а только в виде квадратиков. При редактировании они пропадают и ломается таблица в колонтитуле. Подскажите как правильно считывать эту строку.
Код прикладываю:
Код:
For Each sec In obook.Sections
For Each kolontitul In sec.Headers
        For Each shp In kolontitul.Shapes
        
            If shp.TextFrame.HasText = True Then

                str = shp.TextFrame.TextRange.Text
Вложения
Тип файла: doc 1.doc (62.0 Кб, 15 просмотров)
DolgopolovaOlga вне форума Ответить с цитированием
Старый 07.01.2012, 21:12   #2
All_Ex
Пользователь
 
Регистрация: 06.01.2012
Сообщений: 22
По умолчанию

Из справки:

Некоторые формы не поддерживают прилагаемый текст (линии, изображения, и объекты OLE, например).
Если Вы пытаетесь возвращать или устанавливать свойства, которые управляют текстом в текстовом фрейме для таких объектов, то происходит ошибка.
Используйте собственность HasText, чтобы определять содержит ли текстовый фрейм текст, как показано в следующем примере.
For Each s In ActiveDocument.Shapes
With s.TextFrame
If .HasText Then
srt=ActiveDocument.Shapes(1).TextFr ame.TextRange.Text
End With
Next
Возможно это причина появления символов форматирования?
В формате Text они будут в виде квадратов.
Если хотите увидеть их цифровой код:
Number=Asc(Символ)

Последний раз редактировалось All_Ex; 07.01.2012 в 21:15.
All_Ex вне форума Ответить с цитированием
Старый 08.01.2012, 02:14   #3
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

DolgopolovaOlga,
таблица в колонтитуле находится в Надписи (это сделано для того, чтобы текст документа мог располагаться поверх таблицы).
Надпись является шейпом, поэтому при таком подходе Вы получаете весь текст таблицы.
Как Вы редактируете текст? Не нужно заменять текст целиком, типа
shp.TextFrame.TextRange.Text = MyString
Используйте методы .TypeText, .InsertAfter и т.д.
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даны натуральное число n и символы s1,...,sn. Получите все символы, расположенные до первого двоеточия (Pascal) Татьана Помощь студентам 16 22.09.2011 15:05
форматирования вывода в C# Progsenya C# (си шарп) 1 12.12.2010 21:17
макрос форматирования таблиц darklumen Microsoft Office Word 6 16.02.2010 12:57
СИМВОЛЫ - помогите решить задачу на символы kiko Паскаль, Turbo Pascal, PascalABC.NET 5 30.11.2008 16:09
форматирования в Excel_и VVk Общие вопросы Delphi 2 11.07.2008 16:27