Я работаю над интервалом в текстовом документе, и мне нужно изменить расположение разрывов страниц и количество пустых абзацев для интервалов, которые макрос вводит, основываясь на количестве строк предыдущего абзаца, чтобы два поля, которые вводятся подпрограммой ClientNameandDate на той же странице.
Я использовал количество агентов для изменения интервала, но проблема в том, что информация некоторых агентов занимает больше места, чем другие, и поэтому в абзаце переменной длины может быть различное количество строк, даже если число агенты то же самое. Это приводит к тому, что макрос иногда генерирует пустую страницу, чего я не хочу. Переменная HIPAANumber - это та, которая хранит количество агентов в форме. Я посмотрел на варианты, когда я пишу выбор. и Выбор. Параграф. но ни один из вариантов, кажется, не захватывает нужную мне информацию.
With Selection
If HIPAANumber > 2 And HIPAANumber < 5 Then
.InsertBreak Type:=wdPageBreak
End If
Call ClientNameandDate(ClientName) 'The Sub inputs the Date and Client's Name fields. These fields always take up the same amount of space.
.TypeParagraph
If HIPAANumber <= 2 Then
.InsertBreak Type:=wdPageBreak
Else
.TypeParagraph
End If
End With
Private Sub ClientNameandDate(ClientName)
Selection.TypeParagraph
With Selection
.ParagraphFormat.Alignment = wdAlignParagraphLeft
.TypeText Text:="_______________________________" 'This code inputs the Date field
.TypeText Text:=Chr(11)
.TypeText Text:="Date"
.TypeParagraph
.Font.Size = 4
.TypeText Text:=Chr(11)
.Font.Size = 12
.TypeText Text:=vbTab & vbTab & vbTab & vbTab & vbTab & vbTab & "__________________________________________"
.TypeText Text:=Chr(11)
.TypeText Text:=vbTab & vbTab & vbTab & vbTab & vbTab & vbTab
.Font.Bold = True
.TypeText Text:=UCase(ClientName)
End With
End Sub
'' '
Я действительно не знаю, как использовать объекты в VBA, поэтому, если бы кто-то мог объяснить, как использовать объекты для этого, я был бы очень признателен. Я думаю, что самый простой способ сделать это - зафиксировать количество строк текста в абзаце с переменной длиной, а затем использовать это в операторе If позже, но я не знаю, как зафиксировать количество строк текста. абзаца.