В моем документе макрос копирует и вставляет часть таблицы, которая включает два OptionButton, например Yes / No. Дело в том, что когда я их вставляю, кнопки получают ту же группу, что и исходные, что заставляет пользователя выбирать один из четырех вместо двух вариантов по два каждый. Группы кнопок задаются параметром GroupName. Моя идея состоит в том, чтобы дать параметру GroupName значение номера кнопки плюс 1, разделенное на два (он просто объединяет кнопки в пары). Я пробовал пару вещей, и мне кажется, что CallByName - более перспективный способ. Мой код сейчас выглядит так:
x = 1
For Each Object In ThisDocument
If Object Like "OptionButton" & x Then
CallByName Object, "GroupName", VbLet, (x + 1) \ 2
x = x + 1
End If
Next Object
Это дает мне ошибку 438 - объект не поддерживает этот метод свойства. Я проверил, что ThisDocument.OptionButton1.GroupName существует и может быть изменен.
Может быть лучший способ группировать кнопки по мере необходимости. Пожалуйста, помогите мне.
Я сделал это в excel с:
Dim x As Integer
Dim op As Object
On Error Resume Next
x = 1
While Err.Number = 0
Set op = CallByName(Worksheets(1), "OptionButton" & x, VbGet)
If Err.Number = 0 Then
op.GroupName = x \ 2
x = x + 1
End If
Wend
Но мне не удалось адаптировать его к word