• ベストアンサー

VBA csvファイルのデータをリストビューへ

こんばんは、いつもお世話になっております。 素人ですが、宜しくお願いいたします。 タイトル通りなのですが、csvファイルにあるデータをリストビューで表示したいと思っています。 リストボックスなどへの方法は検索するとヒットするのですが、 リストビューの方法はあまりないのか、見つかりませんでした。 test.csv 1,Name,Tel,Address,Address2 2,Name,Tel,Address,Address2 上記のようなデータが10行ほどあります。 何か参考になるサイトなどでも結構ですので、 ご教授願います。宜しくお願いいたします。

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

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.1

『ListViewコントロールの使い方』 http://officetanaka.net/excel/vba/listview/index.htm この辺り参考にしてみると良いかもしれません。 私はあまり使わない人ですが 上記サイトに従ってザっと書くと以下のような感じ。 サンプル程度なのでエラー処理してません。 Option Explicit Private Sub UserForm_Initialize()   With Me.ListView1     .View = lvwReport     .AllowColumnReorder = True     .FullRowSelect = True     .Gridlines = True     With .ColumnHeaders       .Add , "key", "key"       .Add , "name", "name"       .Add , "tel", "tel"       .Add , "address1", "address1"       .Add , "address2", "address2"     End With   End With End Sub Private Sub UserForm_Click()   Const FILE = "c:\temp\test.csv"   Dim n As Long   Dim i As Long   Dim j As Long   Dim buf, v   n = FreeFile   Open FILE For Input As #n   buf = Split(StrConv(InputB(LOF(n), #n), vbUnicode), vbCrLf)   Close #n   With Me.ListView1.ListItems     .Clear     For i = 0 To UBound(buf) - 1       v = Split(buf(i), ",")       With .Add         .Text = v(0)         For j = 1 To 4           .SubItems(j) = v(j)         Next       End With     Next   End With End Sub

tokyo2199
質問者

お礼

ありがとうございます 大変参考になりました。

関連するQ&A