
SQL EXCEL VBA 接続
Sub b()
'オブジェクト変数の宣言
Dim rstTMP As ADODB.Recordset ユーザ定義型宣言されていません。
とエラーになります。
Dim cmd As New ADODB.Command
'SQL接続
' 接続文とその他処理を記述
conStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Extended Properties=Excel 8.0;" & _
"Data Source=" & FileName
上はコピーしてそのまま使用しています。
myCon.Open conStr
'SQLコマンド作成
With cmd
.CommandText = "Select * From テーブル名"
.CommandType = adCmdText
End With
'SQL文実行/レコードセット取得
Set rstTMP = cmd.Execute
End Sub
やりたいこと
1.エクセルのデータ Ver.2016 ファイル bookdata1
抽出先ファイル bookdata2
とにかく接続して抽出したい
抽出したい
助けてください。
上記のこーどはいろんなサイト・このサイトに質問などしてやっています。
コードは標準モジュールに書いています。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
あとは、エクセルのバージョン(8.0って、excel97のこと?)とドライバをあわせないとだめかな?
https://ja.wikipedia.org/wiki/Microsoft_Excel
jetダメだったら、ACEとか。
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & FileName & ";"
とか。
サンプルになるコードを見つける際には、エクセルのバージョンも併せて検索するとよいですよ。
Sub Excelに接続()
Dim myCon As New ADODB.Connection, FileName As String
Dim conStr As String
'接続先のExcelファイル
FileName = "C:\Users\.....\Desktop\DataBook.xlsx"
'接続文字列
conStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Extended Properties=Excel 8.0;" & _
"Data Source=" & FileName
'接続
myCon.Open conStr
MsgBox "Excelブックに接続完了!"
'接続を解除し、オブジェクトをクリア
myCon.Close: Set myCon = Nothing
End Sub
接続成功です。有難うござました。
明日からSQL文をやります
本かってあるのでうれしいです。
つかれたが
No.3
- 回答日時:
そうだね。
フルパスで書くと変なことになりにくい。 前の行に
filename = "C:\Users\...\sample.xls”
などとしてもよい。
あと、SQLの”テーブル名”とかも実際のものに直さないとね。
No.1
- 回答日時:
アクティブxの参照設定にチェックを入れるのが楽です。
https://msdn.microsoft.com/ja-jp/library/cc36407 …
そうでない場合は、createobjectでできます。
https://ateitexe.com/vba-ado-not-reference/
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) VBAでoutlook365が起動しません。 4 2022/08/25 13:31
- Visual Basic(VBA) VBAコードを張り付け後のエクセルの進め方 2 2023/02/07 18:24
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ODBCドライバの再インストール方法
-
サーバーアプリケーションなし...
-
DBをエクセル表にしたい
-
SQL Server 使えない?
-
MSDEの同時接続ユーザー制限
-
レンタルサーバーのMySQLにODBC...
-
PHP5よりデータベースへの接続...
-
MSDE2000同時接続数
-
[Oracle8i]ODBC経由でデータベ...
-
データベースへ接続できない
-
SQLServer,接続失敗時のエラー...
-
SQLServerでテープにバックアッ...
-
ネットワーク接続ができなくな...
-
VB5+DAO3.5でSQLサーバーに接続...
-
SQLserverとMSDEにていて
-
データベースの接続について
-
(local)とlocalhostの違い
-
Accessでこんなことできますか?
-
エクセルからアクセスへの接続...
-
99bb.com のライセンスバック...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DB接続ができなくなって困って...
-
Access から SQLserver に接続...
-
ACCESSからのODBC接続のみ応答...
-
drop user できない。ORA-01940
-
SQLServer,接続失敗時のエラー...
-
SQLで同じDBに対し2つのコネク...
-
ACCESSからSQLServerのデータを...
-
別の所にある(グローバルIPが...
-
データベースのOPEN,CLOSEについて
-
SQLServer認証とWIndows認証
-
サーバー接続時、ホスト名はIP...
-
同一MDFファイルの共有について
-
DBに接続する時のオープンとク...
-
phpからsqlserverへの接続
-
SQL Serverの移行について
-
異なるドメイン間をODBC経由でD...
-
クライアントでの処理が遅い
-
ACCESS ODBC 接続ダイアログ 非...
-
ADOを利用したODBC、OLEDB経由...
-
VB6.0(SP6)でMySQLに接続したい
おすすめ情報
アクティブxの参照設定にチェックを入れました。
myCon.Open conStr黄色に反転
オブジェクトが必要です。となりました。
どういうことでしょぅか。
FileName もしかしてここに元になる
ファイル名を書くのでしょうか
'SQL接続
' 接続文とその他処理を記述
conStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Extended Properties=Excel 8.0;" & _
"Data Source= "C:\Users\......\Desktop\新しいフォルダー (2).\DataBook.xlsx”
....は自分の名前なので....にしました。
'接続
myCon.Open DataBook
うまくいきません。
おねがいします。
conStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Extended Properties=Excel 8.0;" & _
"Data Source= "C:\Users\......\Desktop\新しいフォルダー (2).\DataBook.xlsx”
....は自分の名前なので....にしました。
'接続
myCon.Open conStr constrtがdata sourceですね
しかしうまくいかないです