今回SQL文からコードと名称を取得して
コードをインデックス値、名称をアイテムにしてコンボボックスに追加
しようとしてます。
おそらく普通なら
.AddItem Item As String,Index As Long
でいく代物だと思いますが、
.AddItem Item As String
の文だと通るのにインデックス値を付けると通らなくなります。
CInt()、Clng()、Val()は試しましたけどどれも駄目でした。
方法があったら教えてください。
Dim lng_index As Long 'インデックス値格納用
Dim int_cbo As Integer 'コンボボックス追加用
cboItem.ListIndex = -1
For int_cbo = 1 To Rs.RecordCount'SQL文の最後まで
With cboItem
lng_index = CLng(Rs.Fields("index"))
.AddItem Trim(G_TOPLIB.gfcCheckNull(Rs.Fields("item"), NULL_STRING)), lng_index
End With
Rs.MoveNext
Next
実際にエラーになるときのlng_indexの値はどうなっていますか?
ここで指定するIndexは、0〜.ListCountの範囲内じゃないとエラーが起こります。
lng_indexの値は1の時に引っ掛っています。
だから範囲内でないことはないと思うのですが
その時コンボのListCountが0だったりしませんか?
コンボに既にデータが入っててもエラーが起こるとなると…ちょっと分からないですねf^^;
ツイート | ![]() |