У меня есть пользовательская форма с кучей флажков.Я хочу, чтобы код VBA добавил блок текста (определяемый как переменная), если флажок установлен в true, и удалил этот блок текста, если он не отмечен.Например, вот что у меня есть для одного из флажков:
Private Sub CheckBox1_Click()
Dim Text1 As String
Text1 = "Text test"
If CheckBox1.Value = True Then
Selection.TypeText Text:=Text1
Selection.InsertParagraph
End If
If CheckBox1.Value = False Then
Selection.Delete Text:=Text1
End If
End Sub
Прежде всего, часть Selection.Delete Text:=Text1
совершенно неверна.Я пытался найти что-то похожее в Google и не смог найти ничего, что удаляет содержимое переменной.
Во-вторых, похоже, ошибка с кодом Selection.InsertParagraph
.Я хочу, чтобы он добавлял новый абзац между каждым блоком текста / переменной, однако, учитывая то, как теперь выглядит код, он добавляет текстовый блок и абзацы отдельно, как если бы я активировал макрос 3 раза:
Текстовый тестТекстовый тестТекстовый тест
(новый абзац)
(новый абзац)
(новый абзац)
ЧтоЯ хочу вместо этого:
Тест текста
(новый абзац)
Тест текста
(новый абзац)
Тест текста
(новый абзац)