У меня есть документ с текстом, который содержит много страниц и разделов, которые после каждого шага имеют элемент управления ActiveX
.VBA checkboxes в Word
В конце документа есть таблица завершения, которая имеет название разделов и когда установлен последний флажок для определенного раздела, она превращает эту часть таблицы в зеленый.
Таким образом, для примера:
РАЗДЕЛ 1:
Текст
(Чекбокс 1)
moretext
(Чекбокс 2)
evenmoretext
(Checkbox 3)
список Завершение:
Раздел 1
То, что я пытаюсь достичь есть VBA, которая будет проверять, чтобы увидеть, если все флажки галочки, а затем сделать раздел 1 часть на столе в конце зеленый.
У меня в настоящее время это работает, поэтому он становится зеленым, но только тогда, когда установлен последний флажок (3).
Есть ли все равно для этого?
Есть и другое: у меня есть кнопка в верхней части документа, которая скрывает несколько разделов по всему документу, который при нажатии проверяет все флажки, которые он будет скрывать первым. (Я использую разрывы страниц, чтобы показать, какие части я хочу скрыть)
Это проблема, однако, поскольку флажки ActiveX
не скрывают, и поэтому я написал несколько VBA, которые вместо этого делают их супер крошечными, а затем изменяет их размеры после готово.
Вот УВА я до сих пор:
Private Sub DTSCheckBox_Click()
If (DTSCheckBox.Value = True And AdminCheckBox.Value = True) Then
Section2Complete.Caption = "Complete"
Section2Complete.BackColor = RGB(0, 255, 0)
CheckAndAmmendBy.Caption = UpgradeTechnic.Text
Else
Section2Complete.Caption = "Outstanding"
Section2Complete.BackColor = RGB(255, 0, 0)
CheckAndAmmendBy.Caption = ""
End If
End Sub
Private Sub V4ToV6Button_Click()
ActiveDocument.Sections(2).Range.Font.Hidden = True
ActiveDocument.Sections(4).Range.Font.Hidden = True
ActiveDocument.Sections(6).Range.Font.Hidden = True
ActiveDocument.Sections(8).Range.Font.Hidden = True
Section15Complete.Caption = "": Section15Complete.BackColor = RGB(255, 255, 255)
ActiveDocument.Tables(1).Rows(15).SetHeight 1, wdRowHeightExactly
SQLScriptCheckbox.Value = True
SQLScriptCheckbox.Height = 1
SQLScriptCheckbox.Width = 1
SQLScriptCheckbox.Enabled = False
RestoreEmailScriptCheckBox.Value = True
RestoreEmailScriptCheckBox.Height = 1
RestoreEmailScriptCheckBox.Width = 1
RestoreEmailScriptCheckBox.Enabled = False
SQLCleanScriptCheckBox.Value = True
SQLCleanScriptCheckBox.Height = 1
SQLCleanScriptCheckBox.Width = 1
SQLCleanScriptCheckBox.Enabled = False
SandboxJobHasBeenSetUpCheckBox.Value = True
SandboxJobHasBeenSetUpCheckBox.Width = 1
SandboxJobHasBeenSetUpCheckBox.Height = 1
SandboxJobHasBeenSetUpCheckBox.Enabled = False
End Sub
Удивительный человек, благодаря за помощь, это работает! – Steve101
@ Steve101 Если этот ответ сработал для вас, вы можете «принять» ответ, нажав зеленую галочку. – Blackhawk