• ベストアンサー

listbox:csvファイルから読み出してlist項目に出したい

ソフトのヘルプファイルをvisual basicで作成しようとしております。 csvファイルから読み出してlist項目に出したいです。 1番目のリストで大項目を選び、するとそのリストに応じた2番目のリストが出現。その2番目の小項目リストを選ぶとヘルプ内容が表示されるというものでしす。 あらかじめプログラム中にリストを用意するものはできますが、作成したいのは既存のcsvファイルを活用したものです。 リストに出てくる項目がcsvファイルから読み出されるようにするのが第一歩ですが、調べたり自分でトライしても、成功しません。 どうぞよろしくお願いいたします。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

ヘルプファイルが外部ファイルに有るのは拡張性、変更容易性で良いと思います。 しかしCSVファイルはシーケンシャルファイルで、目的に合ったものを探すのに、平均半分程度むだ読みをしなくてはならない点です。 第1項目は人間がみてその中から選ぶから(しかし多いと 分類が必要)良いが、有る項目が選ばれた時、どの小項目 を選べば良いか良いう情報はどうします。 すなわちヘルプの内容によって適切なコード付けでも行われていますか? WEB照会のように語句でやるのは、本当は難しいアルゴリズムがあるようです。 大項目のCSVファイルと、小項目のCSVファイルは別ファイルですか。両者はコード体系で有機的に結ばれていますか。その辺のありさまで、コードはガラリと様相を変えそうです。 そう言うことを書いていないと言うことは、関心が向いていなくて、それでは具体的なコードまでも教えて欲しいのかもしれないが、私見では有りますが、出来ないでしょう。 ヘルプファイルを作るときに既に検討すべき問題を突き付きつけられているはずです。 参考関連?ヘルプコンテキスト番号(ID) http://homepage1.nifty.com/MADIA/vb/vb_bbs2/200308_03080073.html http://hp.vector.co.jp/authors/VA014071/tips/help.html

その他の回答 (1)

  • popesyu
  • ベストアンサー率36% (1782/4883)
回答No.1

参考URLでも。 具体的なコードがあればもう少し具体的なアドバイスも出てくるかと思います。

参考URL:
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/vb_t06.htm
mirabouman
質問者

お礼

ありがとうございます。 Private Sub Form_Load() 'ListBox1に結果を表示する ListBox1.Items.AddRange ("c:\csvfile.csv") ' インデックスと項目数を表示する Label1.Caption = "ListIndex:" & List1.ListIndex End Sub Private Sub List1_Click() Label1.Caption = "ListIndex:" & List1.ListIndex ' 選択されている項目を表示する Label3.Caption = "選択されている項目:" & List1.List(List1.ListIndex) End Sub これで実行すると「実行時エラー424、オブジェクトが必要です」のエラーメッセージが出ます。。。 csvfile.csvの中身は test0,00,ans0 test1,01,ans1 test2,02,ans2 です。素人の為この低いレベルでプログラムが組めません。。よろしくお願いします。

関連するQ&A