- ベストアンサー
Access2000 複数列のリストボックス
Access2000を使っています。 複数列で構成しているリストボックスの任意の行をVBAで選択状態にしたいのですが、 どうすれば可能でしょうか? 例えば2行目を選択状態にしたい場合、列数=1のリストボックスであれば lstTEST = lstTEST.ItemData(1) とコーディングすれば2行目が選択状態になってくれたのですが、 列数≧2のリストボックスだと、同様にコーディングしてもダメでした。 これはもう無理なこととあきらめるしかないでしょうか?
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
ひょっとして、こんなこと? Private Sub コマンド0_Click() Dim i As Integer i = L1.ListIndex For i = 0 To 1 L1.Selected(i) = True Next i 'あるいは、 'L1.Selected(2) = True End Sub これならば私が二重に勘違い。 ちょいと確認を。 複数選択を標準にして。
その他の回答 (5)
- piroin654
- ベストアンサー率75% (692/917)
#4の >i = L1.ListIndex は使用していないのでコメントアウトしてください。 >'あるいは、 >'L1.Selected(2) = True という部分は特定の行を選択して選択状態にします。 コメントアウトしていないところは連続した行を 選択状態にしています。
- piroin654
- ベストアンサー率75% (692/917)
L1はlstTESTとしてください。
- piroin654
- ベストアンサー率75% (692/917)
失礼しました。行と列を勘違いしていました。 任意の列の行の値を取得するのは#2さんの 回答のようにColumn(i,j)のようにして できますが、任意の列の行を選択状態に することはできなかったと思います。 たぶんですが。
- kmetu
- ベストアンサー率41% (562/1346)
たとえば2列なら lstTEST = lstTEST.Column(0, 1) としてください。
- piroin654
- ベストアンサー率75% (692/917)
リストボックスのプロパティで、「複数選択」 を「標準」にすれば複数列がマウスで選択できます。
お礼
.Selected(i) = True で出来ました!ありがとうございました!