VB6でDAOを使用してExcelデータを読込
\\work1\tmp\hoge.xls
の内容は
見出し1 見出し2 見出し3
a 1 101
b 2 102
c 3 103
List2.AddItem RS("F1").Value & vbTab & RS("F2").Value & vbTab & RS("F3").Value
の行で、数値フィールドがオーバーフローしましたとなりますが、何故ですか?
Private Sub Command4_Click()
Dim ws As DAO.Workspace
Dim DB As DAO.Database
Dim RS As DAO.Recordset
Dim strXLSName As String
Dim strSQL As String
strXLSName = "\\work1\tmp\hoge.xls"
Set ws = DBEngine.Workspaces(0)
Set DB = ws.OpenDatabase(strXLSName, False, False, "EXCEL 8.0;HDR=NO;")
strSQL = "Select * From [Sheet1$] "
Set RS = DB.OpenRecordset(strSQL, dbOpenDynaset)
List2.Clear
Do Until RS.EOF
List2.AddItem RS("F1").Value & vbTab & RS("F2").Value & vbTab & RS("F3").Value
RS.MoveNext
Loop
RS.Close
DB.Close
ws.Close
End Sub
インポートモードを指定してみては如何でしょう。
とりあえず、
"EXCEL 8.0;HDR=NO;"
を
"EXCEL 8.0;HDR=NO;IMEX=1;"
にしてみた場合、状況は変わりますか?
魔界の仮面弁士さんうまくできました。
インポートモードなるものしらべましたら
http://support.microsoft.com/kb/257819/ja
雰囲気なるものは少しわかりました。大変有り難う御座いました。
解決しました。
編集 削除