
ExcelのVBAにてSQLのSELECT文を実行し、取得したデータを一覧表示する仕組みを作っています。
同じプログラムを使用者する者7名の内、1名のみ以下のエラーが発生しています。
どのように対応すればよいか、ご教示ください。
環境 Excel2010
状況 SELECTの実行時
「実行時エラー[80004005]
[Microsoft][ODBC Driver Manager] データ ソース名および指定された既定のドライバーが見つかりません。」
実行ソース
Private Sub exeSelect(sheetNm as string ,sqlSt as String)
Dim i As Integer
Dim j As Integer
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim bookNm As String
bookNm = ThisWorkbook.FullName
Set cn = New ADODB.Connection
cn.Provider = "MSDASQL"
cn.ConnectionString = "Driver={Microsoft Excel Driver (*.xls)};" & "DBQ=" & bookNm & "; ReadOnly=False;"
cn.Open←ここでエラー
Set rs = New ADODB.Recordset
rs.Open sqlSt, cn, adOpenStatic
j = START_ROW
Do Until rs.EOF
For i = 0 To rs.Fields.Count - 1
Worksheets(sheetNm).Cells(j, i + 1).Value = rs(i).Value
Next
j = j + 1
rs.MoveNext
Loop
rs.Close
cn.Close
End Sub
No.1ベストアンサー
- 回答日時:
>[Microsoft][ODBC Driver Manager] データ ソース名および指定された既定のドライバーが見つかりません。
」上記より、ODBC系のエラーというのはわかります
>同じプログラムを使用者する者7名の内、1名のみ以下のエラーが発生しています。
という事を考えれば、その人のPCの問題と考えられます(ほぼ確定)
ので、問題となっているPCにて、ODBC設定を見る必要があります
コントロールパネル - 管理ツール - データソース(ODBC)を開き
正常PCと見比べてください
違いがない場合、一度削除して作り直すことで直る事も有
※削除より今使っているODBCのデータソース名を変えておいて、作り直す
上記でだめなら
Microsoft Excel Driverが壊れているものと思われますので
Excel自体を導入し直せば大抵は直ります。
早速のご回答有難うございます。
ODBC設定に不備は見当たらなく、作り直してみましたが、状況変わりませんでした。
Excelを導入し直してみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
実行時エラー'-2147467259(80004005)':
Access(アクセス)
-
データソース名および指定された既定のドライバが見つかりません。
Oracle
-
システムエラーです:&H80004005(-2147467259)エラーを特定できません 現在、エク
Excel(エクセル)
-
-
4
DB接続ができなくなって困っています!
その他(データベース)
-
5
Excel VBAでほかのアプリケーションで使用中(ロック)のファイルを上書き保存したい
その他(プログラミング・Web制作)
-
6
特定のPCだけ動作しないVBAマクロがあります。その理由は?
Visual Basic(VBA)
-
7
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
8
Excel VBA メール作成について 本文の中にExcel でコピーした図を上下に2つ 貼り付けを
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
String""から型'Double'への変...
-
【VBA】ワークブックを開く時に...
-
UserForm1.Showでエラーになり...
-
助けてください
-
2つほどお聞きしたいことがあり...
-
インポート時のエラー「データ...
-
VBAでfunctionを利用しようとし...
-
ACCESS97 実行時エラー '2455'...
-
VBAでのファイル読込エラー...
-
お助けください!VBAのファイル...
-
現在、QueryTableが設定されて...
-
ACCESSで値を代入できないとは?
-
On ErrorでエラーNoが0
-
【VBAエラー】Nextに対するFor...
-
VBでSQL文のUPDATE構文を使った...
-
【Access】Excelインポート時に...
-
VBAのリストボックスで、横スク...
-
matlabでのエラー コールバッ...
-
SQLでエラーです。
-
VBA IE要素 objIE.document.all...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
お助けください!VBAのファイル...
-
【VBA】ワークブックを開く時に...
-
VBAでfunctionを利用しようとし...
-
String""から型'Double'への変...
-
実行時エラー 438 の解決策をお...
-
マクロで"#N/A"のエラー行を削...
-
レコード登録時に「演算子があ...
-
文字列内で括弧を使うには
-
【Access】Excelインポート時に...
-
インポート時のエラー「データ...
-
Filter関数を用いた結果、何も...
-
ApplicationとWorksheetFunctio...
-
On ErrorでエラーNoが0
-
Excel vbaについての質問
-
VBA データ(特定値)のある最...
-
ACCESSで値を代入できないとは?
-
【VBAエラー】Nextに対するFor...
-
「実行時エラー '3167' レコー...
-
実行時エラー'-2147467259(8000...
おすすめ情報