私は経験豊富なVBAプログラマーではありませんが、バスケットボールチームを管理できるExcelスプレッドシートを作成しようとしています。別のユーザーフォームで宣言された配列の参照
私は 'selectedPlayers'という配列を宣言したプライマリuserformを持っています。 このプライマリユーザーフォームには、2次ユーザーフォーム 'i'回を起動するforループがあります。
私はプライマリユーザーフォームの 'i'と 'selectedPlayers'にセカンダリユーザーフォームからアクセスできませんでした。 私は、最初のuserformで目に見えないテキストボックスを作成し、2番目のuserformから参照できるテキストボックスを作成することで回避策を見つけることができました。
私は両方をpublicとして宣言しようとしましたが、2番目のuserformから呼び出すことはできません。最初のユーザーフォームのコードの
部:
i = 0
Do While Not i = Int(txtNumberPlayers)
frmGameDataSecondary.Show
i = i + 1
Loop
第二ユーザーフォーム:
Private Sub cmdDone_Click()
frmGameData.selectedPlayers(frmGameData.i) = lbxPlayer.Value
Unload Me
End Sub
Private Sub UserForm_Initialize()
With Me.lbxPlayer
For Each LR In LO.ListRows
exitSequence = False
For k = 1 To Int(frmGameData.txtNumberPlayers)
If frmGameData.selectedPlayers(k) = blablabla.Value Then
exitSequence = True
End If
Next k
If !exitSequence Then
.AddItem blablabla.Value
End If
Next LR
End With
End Sub