アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excel2002
WindowsXP

CSVファイルにスペックリストがあり、そこへADOで接続しています。

また、エクセルのA列に製品名があり、RecordsetのFindもしくはFilterで該当するスペックを見つけられるようにしています。

ソースとしては次のような感じです。

For i = 1 to 100
  RS.MoveFirst
  RS.Find "製品名='" & Cells(i,1) & "'"
  If Not RS.EOF Then
    Cells(i,2)=RS("重量")
  End If
next i

このソースの実行中にいつも特定の製品名のところで次のエラーのどちらかで止まってしまいます。


[Microsoft][OEBC Text Driver] UPDATE ステートメントの構文エラーです。
[Microsoft][OEBC Text Driver] このISAMでは、リンクテーブル内のデータを更新することはできません。


この製品名を省くと最後まで問題なく進みます。製品名は単に半角アルファベットで8文字程度なんですが・・・。

このエラーの意味はどういうものでどういった回避方法があるのでしょうか?

A 回答 (1件)

http://www.happy2-island.com/vbs/cafe02/capter00 …
'CSV 「C:\TEST\TEST.csv」

Set myDB = CreateObject("ADODB.Connection")
myDB.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"DBQ=C:\TEST;ReadOnly=1"
mySQL = "select * from TEST.csv where 製品名='冷蔵庫'"
Set myRS = myDB.Execute(mySQL)
Do Until myRS.Eof = True
Msgbox myRS("製品名").Value & "=>" & myRS("重量").Value
myRS.MoveNext
Loop
myRS.Close : Set myRS = Nothing
myDB.Close : Set myDB = Nothing
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す