パソコンを買い替えたらEXCEL マクロが正常に動かなくなりました。
旧環境
windowsXP
Excel2003
新環境
windows7 Home Premium SP1 64bit
Excel2010 32bit
Excel2003からExcel2010への変換は済ませてあります。
[Microsoft][ODBC テキスト Driver] パス'(不明)'は正しくありません。
パス名に間違いがないことと、ファイルが置かれたサーバーに接続していることを確認してください。
と出て、adoCONcsv.Open File_csvでエラーになるようです。
自分でいろいろと調べて[Microsoft Text Driver]に関係しているのかと思い
コントロールパネル→管理ツール→データ ソース (ODBC)のプロパティ
リンク先を %windir%\SysWOW64\odbcad32.exe
作業フォルダを %windir%\SysWOW64
に変えてODBCデータ ソース アドミニストレーターのドライバタブに
[Microsoft Text Driver]が表示されているのを確認してから実行しましたがエラー内容は変わりませんでした。
アドレスバーにコピー&貼り付けをしてtest.csvを開き、ファイルパスが正しいことを確認しています。
どなたか原因をわかりやすく教えていただけないでしょうか?
以下、ソース
Dim adoCONcsv As New ADODB.Connection
Dim adoRECcsv As New ADODB.Recordset
Dim File_csv As String
File_csv = "Driver={Microsoft Text Driver (*.txt; *.csv)}; " & _
"DBQ=C:\Users\admin\Downloads\test.csv;" & _
"ReadOnly=0"
省略
adoCONcsv.Open File_csv ←ここでエラー
Set adoRECcsv = adoCONcsv.Execute("select * FROM articles.csv WHERE (ID = 11111111) or (ID = 22222222)")
'シートtestに抽出したデータを書き込み
i = 0
Do Until adoRECcsv.EOF = True
i = i + 1
For j = 1 To adoRECcsv.Fields.Count
.Worksheets("test").Cells(i, j).Value = adoRECcsv.Fields(j - 1).Value
Next j
adoRECcsv.MoveNext
Loop
'レコードセットのクローズ
adoRECcsv.Close
'データベースのクローズ
adoCONcsv.Close
No.1ベストアンサー
- 回答日時:
test.csv というフォルダ内に、articles.csv ファイルがあるのでしょうか。
変な所でファイル名を指定しているような?
CSVファイルに接続してみよう!
http://home.att.ne.jp/zeta/gen/excel/c04p47.htm
の後半部分にODBCでの説明があります。
なお、Office2010でOLEDBにて接続する場合は
Microsoft.Jet.OLEDB.4.0 → Microsoft.ACE.OLEDB.12.0
また、半角バックスラッシュ\ は \ に置き換えられます。
>test.csv というフォルダ内に、articles.csv ファイルがあるのでしょうか。
変な所でファイル名を指定しているような?
articles.csvファイルはありません。以前はarticles.csv参照していたのですが、
パソコンを替えてからはtest.csvを参照したくて、あちらこちら
ファイル名をtest.csvに変えました。
FROM articles.csvも変えなくてはならないことを、すっかり忘れていました。
気づかせていただき、ありがとうございました。
しかし、ファイル名を変えるだけでは解決せず、
いろいろ試した結果
File_csv = "Driver={Microsoft Text Driver (*.txt; *.csv)}; " & _
"DBQ=C:\Users\admin\Downloads\;" & _
"ReadOnly=0"
と、フォルダ名までの指定に変えることで解決することができました。
データ ソース (ODBC)のプロパティも以前のパスに戻し、正常に動くことを確認しました。
お忙しいところ、回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセスと同フォルダのCSVファ...
-
エクセルのVBAについて とある...
-
Python CSVファイルについて
-
複数のcsvファイルを統合、でも...
-
大量のフォルダからひとつのフ...
-
コマンドプロンプトの「%1」と...
-
バッチでテキストファイルから...
-
コマンドプロンプトのエラーに...
-
.txtではなく.logの方が良いの...
-
バッチ処理でファイルの中身を...
-
binファイルを解凍したいの...
-
Excel.VBA テキストファイルを...
-
コマンドプロンプトで作成日時...
-
パソコンのフォルダー内のファ...
-
多数のサブディレクトリ内のフ...
-
バッチファイル 文字列にスペ...
-
VB6側からテキストファイルをク...
-
ファイルの最後に文字列挿入
-
.NETアプリを作ったときの .man...
-
バッチファイルで昨日の日付を取得
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Python CSVファイルについて
-
エクセルのVBAについて とある...
-
【Excel】Powerクエリーの取り...
-
複数エクセルファイルの合成
-
FTPコマンド mgetでとまってし...
-
アクセスと同フォルダのCSVファ...
-
エクセル 指定範囲をCSV出力
-
複数のcsvファイルを統合、でも...
-
【Rコマンダー】データインポー...
-
MAC フォルダ内のPDF件数とペー...
-
バッチ処理でcsvファイルの文字...
-
csv形式からbmpを作成
-
シェルスクリプトで文字コード変換
-
エクセルマクロ、複数のCSVファ...
-
yahooカレンダーのデータをICS...
-
EXCEL マクロが正常に動かなく...
-
csvファイルを結合するバッ...
-
gnuplotで複数csvファイルから...
-
Excelの帳票形式をアクセスに取...
-
エクセルのマクロについての質...
おすすめ情報