2017-01-09 2 views
0

Я работаю с документом шаблона слова, который широко использует таблицы для разделения значений. Это было отлично для большей части моего кода VBA, так как очень просто установить значения, где мне нужно внести изменения. Однако в заголовке есть одно место, где одна ячейка содержит три строки текста. Мне нужно установить значение JUST первых двух строк в этой ячейке.Установить диапазон для определенных линий внутри ячейки, Microsoft VBA

ВОПРОС: Как вы устанавливаете значение JUST первых двух строк текста в данной ячейке? Или, в более широком смысле, вы можете установить Range в одну строку внутри ячейки?

То, что я прямо сейчас, который устанавливает диапазон в качестве целой клетки и устанавливает значение, как «новый текст»:

ActiveDocument.PageSetup.DifferentFirstPageHeaderFooter = True 

With ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage) 
.Range.Tables(1).Cell(1, 2).Range.Text = "NEW TEXT" 
End With 

Спасибо за любой опыт вы можете одолжить мне.

+0

захватить значение целой клетки, найти символы перевода строк, и до второго перерыва линии заменить все? – Chrismas007

ответ

0

Для замены (например) во второй строке:

With ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage) 
    .Range.Tables(1).Cell(1, 2).Range.Paragraphs(2).Range.Text = "NEW TEXT" & vbLf 
End With 
+0

Большое спасибо! Это решает. Теперь я вижу, что я слишком специфичен в поиске решения ... мог бы понять, как общий выбор линии применяется в моем конкретном случае. – sparrow925

Смежные вопросы