ADOを使ってCSV ファイルをMSHFlexGridに表示する (SNo.069) | |
使用コントロール | Button2 AxMSHFlexGrid1 |
その他条件 | WindowsXP(Vista) Visual Basic 2005(VB2008) ツールボックスを右クリックして、アイテムの追加と削除より、COMコンポーネント内のMicrosoft Hierarchical FlexGrid Control 6.0(SP4)(OLEDB) にチェックを入れて下さい。(VB6.0 が別途必要です) プロジェクト→参照の追加→COM→Microsoft ActiveX Data Objects *.* Library を参照して下さい |
★ ADOを使ってCSV ファイルをMSHFlexGridに表示する
Private Sub Button2_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button2.Click 'ADOを使ってCSV用ファイルをMSHFlexGridに表示する Dim CN As New ADODB.Connection, RS As New ADODB.Recordset Dim FolderName As String, txtDRIVER As String Dim DataFile As String, strSQL As String Dim strProvider As String AxMSHFlexGrid1.FixedCols = 0 FolderName = "..\..\" 'データのあるフォルダーを取得 DataFile = "Test.csv" 'データファイル名を取得 'データベースに接続するための情報を設定する strProvider = "Provider=MSDASQL;Extended Properties=""" txtDRIVER = "DRIVER={Microsoft Text Driver (*.txt; *.csv)};DBQ=" CN.ConnectionString = strProvider & txtDRIVER & FolderName & """" CN.Open() 'コネクションをオープン 'Recordsetオブジェクトのオープン strSQL = "Select * From " & DataFile RS.Open(strSQL, CN, ADODB.CursorTypeEnum.adOpenStatic, _ ADODB.LockTypeEnum.adLockReadOnly) AxMSHFlexGrid1.DataSource = RS 'MSHFlexGridにデータを代入 'Recordset・Connection を閉じる RS.Close() CN.Close() '参照を解放。 System.Runtime.InteropServices.Marshal.ReleaseComObject(RS) RS = Nothing System.Runtime.InteropServices.Marshal.ReleaseComObject(CN) CN = Nothing ' AxMSHFlexGrid1.FixedRows = 0 '項目行が不要の場合 End Sub |
|
表示する *.CSV ファイルはご用意下さい。ファイルのパスの設定はファイルに合せて変更して下さい。 元々は、VB6.0で使っていたものを.NET用に移植したものです。 |