У меня есть пользовательская форма с 5 кнопками флажков для 5-ти pdf-версий. Ну, когда пользователь вызывает пользовательскую форму, пользовательская форма инициализирует 5 кнопок флажков, чтобы выбрать один из них. На данный момент код очень статичен и не очень хорош.Как динамически добавлять флажки-кнопки в пользовательскую форму в VBA
Вот пример:
If rs.EOF = False Then
Do Until rs.EOF Or i = 5
Select Case i
Case Is = 0
frmOne.Version5.Visible = True
frmOne.Version5.Caption = rs!versNo & "#" & rs!versFrom
frmOne.Version5.tag = rs!versNo & "_" & rs!FiD & ".pdf"
Case Is = 1
frmOne.Version4.Visible = True
frmOne.Version4.Caption = rs!versNo & "#" & rs!versFrom
frmOne.Version4.tag = rs!versNo & "_" & rs!FiD & ".pdf"
Case Is = 2
frmOne.Version3.Visible = True
frmOne.Version3.Caption = rs!versNo & "#" & rs!versFrom
frmOne.Version3.tag = rs!versNo & "_" & rs!FiD & ".pdf"
Case Is = 3
frmOne.Version2.Visible = True
frmOne.Version2.Caption = rs!versNo & "#" & rs!versFrom
frmOne.Version2.tag = rs!versNo & "_" & rs!FiD & ".pdf"
Case Is = 4
frmOne.Version1.Visible = True
frmOne.Version1.Caption = rs!versNo & "#" & rs!versFrom
frmOne.Version1.tag = rs!versNo & "_" & rs!FiD & ".pdf"
End Select
i = i + 1
rs.MoveNext
Loop
End If
Чтобы много кода я думаю. Так что мое намерение состояло в том, чтобы определить его как на примере ниже, но это не работает:
If rs.EOF = False Then
For i = 1 To 5
With frmOne
.Version & i &.Visible = True
.Version & i &.Caption = rs!versNo & "#" & rs!versFrom
.Version & i &.tag = rs!versNo & "_" & rs!FiD & ".pdf"
End With
rs.MoveNext
Next i
End If
ли есть кто-нибудь представление о том, как я могу исправить это?
И что есть, когда флажки не предопределены в пользовательской форме? Как добавить флажки в пользовательскую форму? – yuro
Используйте метод 'Add' коллекции элементов управления. – Rory
Вы хотите просто определить 'С помощью frmOne.Controls.Add (« Version »& i) ...' – yuro