選択した値をコレクション内のリストボックスに書き込もうとしています。
この行でエラーが発生します - SelectedEnt.Add ItemReq, Key
これが私の完全なコードです。
Sub YesFormDataSubmit()
Dim SelectedEnt As Collection
Dim Key As Variant
Set SelectedEnt = New Collection
Key = 0
For lItem = 0 To Sheets("Main").Ent_ListBox.ListCount - 1
If Sheets("Main").Ent_ListBox.Selected(lItem) = True Then
ItemReq = Sheets("Main").Ent_ListBox.List(lItem)
If ItemReq <> "" Then
Key= Key + 1
SelectedEnt.Add ItemReq, Key
End If
End If
Next
End Sub
key
コレクションのインデックスではありません、考えてみます。
Dim c as New Collection, i as Long
c.Add "David", "999"
c.Add "George", "14"
For i = 1 to c.Count
Debug.Print c(i)
Next
key
また、あなたが長い/整数の代わりに文字列を渡し、不一致エラーを取得している理由である文字列型でなければなりません。
そのキー値を他の何かに使用している場合key
を除き、完全に省略できます. をまったく使用せずにインデックスで呼び出すことができます。
してくださいSelectedEnt.Add ItemReq
。
アイテムはコレクションに順番に追加され、インデックスSelectedEnt.Item(1)
などでアクセスできます。
あなたがいる場合か必要なkey
他のいくつかの理由のために、あなたは明示的に文字列にキャストする必要があります。
SelectedEnt.Add ItemReq, CStr(Key)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加