OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

リストボックスで選択したデータを表示する方法

  • すぐに回答を!
  • 質問No.218234
  • 閲覧数1140
  • ありがとう数2
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 83% (432/517)

ソフトはACCESS2000です。
フォームでの入力で、リストボックスから複数選択できるようにしているのですが、このリストボックスの値集合ソースに入っている件数が多いため、下にかなりスクロールすることになります。
そこで、リストボックスの右側に別にリストボックスで選択したものを表示させられないかと思っています。
ここでお聞きしたいのは、
1. 表示エリアとしてテキストボックスを作ったのですが、テキストボックスでOKか?
2. 1でOKの場合、リストボックスで選択したものをテキストボックスに表示させる方法
3. 1でOKの場合、そのテキストボックスへ入力できなくする方法(表示ONLYにしたい)
4. 1でだめな場合、別な方法はあるか?あればその方法
です。
回答は、1~3か、1,4になるかと思います。よろしくお願いいたします。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.2
レベル9

ベストアンサー率 41% (40/97)

リストボックスのプロパティの更新後処理から[イベントプロシージャ]を
選んで、右に出る ・・・ をクリックしてください。コードはそこに記述します。

ここで「リスト0」はリストボックスの名前、「テキスト2」はテキストボッ
クスの名前です。

Private Sub リスト0_AfterUpdate()

Dim cnt As Integer
Dim dummystr As String

cnt = 0
dummystr = ""

While cnt < リスト0.ItemsSelected.Count
dummystr = dummystr & リスト0.ItemData(リスト0.ItemsSelected.Item(cnt))
dummystr = dummystr & "/"

cnt = cnt + 1
Wend

テキスト2.Value = dummystr

End Sub
補足コメント
hinebot

お礼率 83% (432/517)

バッチシできました!
ありがとうございました。ただ、欲を言いますと
>dummystr = dummystr & "/"
この辺をどうにかして、縦に並べられる(改行できる)とありがたいのですが。
何とかなりますでしょうか?
投稿日時 - 2002-02-15 15:26:18
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル8

ベストアンサー率 40% (9/22)

1. 表示エリアとしてテキストボックスを作ったのですが、テキストボックスでOKか? OKです。 2. 1でOKの場合、リストボックスで選択したものをテキストボックスに表示させる方法 表示するテキストボックスをFieldname1、リストボックスをFieldListとすると、 Me!FieldName1 = Me!FieldList でできるはずです。 3. 1でOKの場合、 ...続きを読む
1. 表示エリアとしてテキストボックスを作ったのですが、テキストボックスでOKか?
OKです。

2. 1でOKの場合、リストボックスで選択したものをテキストボックスに表示させる方法
表示するテキストボックスをFieldname1、リストボックスをFieldListとすると、
Me!FieldName1 = Me!FieldList
でできるはずです。

3. 1でOKの場合、そのテキストボックスへ入力できなくする方法(表示ONLYにしたい)
テキストボックスを使用不可、ロックすればいいと思いますが...。

簡単ですが、参考にしてください。
補足コメント
hinebot

お礼率 83% (432/517)

回答ありがとうございます。
1つだけ質問追加させてください。
2の「Me!FieldName1 = Me!FieldList」はどこに設定すれば良いですか。(式?の意味は判ります。)
投稿日時 - 2002-02-15 13:09:12


  • 回答No.3
レベル8

ベストアンサー率 40% (9/22)

1.の補足です。 いつのタイミングで、テキストボックスに移すかによりますが、リストの中の項目をダブルクリックで表示させる場合は、リストボックスのDbclick時に先ほどの式を追加してみてください。 ...続きを読む
1.の補足です。
いつのタイミングで、テキストボックスに移すかによりますが、リストの中の項目をダブルクリックで表示させる場合は、リストボックスのDbclick時に先ほどの式を追加してみてください。
お礼コメント
hinebot

お礼率 83% (432/517)

リストボックス側のプロパティですね。←こんな初歩的なことも分からずにいました。^^;
ありがとうございました。
投稿日時 - 2002-02-15 15:23:22
  • 回答No.4
レベル9

ベストアンサー率 41% (40/97)

VBA ではどうもテキストボックス内で改行出来ないようなので、 改行して表示したい場合はテキストボックスでなく、こちらも リストボックスにしたらどうでしょうか? リスト0が選択するリストボックス、リスト2が表示用のリストボックスです。 (前もってリスト2の値集合タイプを値リストにして下さい。) Private Sub リスト0_AfterUpdate() Dim cnt As Inte ...続きを読む
VBA ではどうもテキストボックス内で改行出来ないようなので、
改行して表示したい場合はテキストボックスでなく、こちらも
リストボックスにしたらどうでしょうか?
リスト0が選択するリストボックス、リスト2が表示用のリストボックスです。
(前もってリスト2の値集合タイプを値リストにして下さい。)

Private Sub リスト0_AfterUpdate()

Dim cnt As Integer

If リスト0.ItemsSelected.Count > 0 Then
リスト2.RowSource = リスト0.ItemData(リスト0.ItemsSelected.Item(0)) & ";"
cnt = 1
While cnt < リスト0.ItemsSelected.Count
リスト2.RowSource = リスト2.RowSource & リスト0.ItemData(リスト0.ItemsSelected.Item(cnt)) & ";"
cnt = cnt + 1
Wend
Else
リスト2.RowSource = ""
End If

End Sub
お礼コメント
hinebot

お礼率 83% (432/517)

ちょっと今の私には難しすぎます。今回は改行しないで表示することにしました。
わざわざありがとうございました。
投稿日時 - 2002-02-19 19:39:48
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ