"1","あ","A"
"2","い","B"
"3","う","C"
"4","え","D"
"5","お","E"
上記のようにカンマで3列づつに区切られたテキストファイル(.txt)を、
3つのコンボボックスに表示するにはどのようにしたらいいのでしょうか?
例えば、combo1で"4"が選択されたらcombo2で"え"が、combo3で"D"が表示するようにしたいんです。
なおテキストファイルは随時追加するので、行数はいくつになるか分かりません。
とても基本的なのかもしれませんが、どなたか分かる方教えてください。
よろしくお願いします。
> 上記のようにカンマで3列づつに区切られたテキストファイル(.txt)を、
> 3つのコンボボックスに表示するにはどのようにしたらいいのでしょうか?
1. テキストファイルの内容を取得する。
2. コンボボックスにデータを登録する。
という処理が必要になります。わからないのは、どちらでしょうか?
例えば後者(データの登録方法)であれば…
VB.NETの場合は、「ComboBox1.Items.Add(データ)」で、
VB6の場合は、「Combo1.AddItem データ」で登録できます。
> combo1で"4"が選択されたらcombo2で"え"が、combo3で"D"が表示するようにしたいんです。
「選択された時」に発生するイベントで、他のコンボボックスの
「選択している行」を表すプロパティを変更すればOKです。
VB.NETの場合は、SelectedIndexChangedイベントとSelectedIndexプロパティ、
VB6の場合は、ClickイベントとListIndexプロパティを使ってみてください。
わからないのはどちらかというと前者です。
http://www.g.dendai.ac.jp/lecture/vbasic/vb10.html
上記のホームページにあるように(私がやりたいのは表形式ではなくコンボボックスに表示ですが)
Do Until〜Loopの形式で、Input関数を用いてやればいいと思うのですが、
よく理解ができません。
その辺りを教えていただけませんか?
使用環境:VB6.0
イメージとしては、こんな感じになるかと。
必要に応じて、エラーチェック処理や変数宣言等を追加してみてください。
FNo = FreeFile()
Open ファイル名 For Input As #FNo
Do Until EOF(FNo)
Input #FNo, strA, strB, strC
Combo1.AddItem strA
Combo2.AddItem strB
Combo3.AddItem strC
Loop
Close #FNo
説明の通りにやったら無事できました。
この度は教えていただき本当にありがとうございました。
上記と同じような質問になるかと思いますが、教えてください。
私の場合、CSVファイルから表示させたいのですが、、、
MyFile = "C:\WINDOWS\デスクトップ\会社\test\test.csv"
MyFile = FreeFile
Open "C:\WINDOWS\デスクトップ\会社\test\test.csv" For Input As #MyFile
Do Until EOF(MyFile)
Input #MyFile, str名前
Combo1.AddItem str名前
Loop
Close #MyFile
というようなコードを書きました。でもコンボボックスには表示されません。
困っていますので、すみませんが教えてください。よろしくお願いします。
ツイート | ![]() |