Как вывести идентификатор формы в Visio-VBA
Вот код в текстовой форме, если изображение не загружается:
Sub CommandButton1_Click()
Dim NoIO As String
Dim shp1 As Visio.Shape
NoIO = ComboBox1.Value
If NoIO = "7" Then
MsgBox shp1.ID
'Call test(shp1)'
'Target shape id selected'
'Change shape data of that shape'
End If
Unload Me
End Sub
Всякий раз, когда я пытаюсь вывести идентификатор формы, я получаю ошибку:
Переменная объекта или переменная блока не установлена
Я не могу изменить параметры подпрограммы, так как я получаю несоответствие объявления процедуры, так как этот код запускается после нажатия кнопки на форме пользователя.
1 ответ
Вы не инициализировали форму shp1
, Вы не указали, как вы выбираете свою форму или почему вы хотите выбрать форму, поэтому я привел простой пример ниже.
Sub CommandButton1_Click()
Dim NoIO As String
Dim shp1 As Visio.Shape
NoIO = ComboBox1.Value
Set shp1 = Application.ActivePage.Shapes(1) ' Example only!
If NoIO = "7" Then
MsgBox shp1.ID
End If
Unload Me
End Sub