を読んで、私はこのコードを実行しようとしている:VBAは、Accessクエリのエラーを実行します。データベースまたはオブジェクトは
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Dim strConn As String
Dim strAcc As String
'Connecting to the DB
cn.ConnectionTimeout = 7200
cn.CommandTimeout = 7200
strConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=d:\Documents\proof.accdb;Mode=Share Deny None; Persist Security Info=False"
cn.Open strConn
'Creating the query string
strAcc = "SELECT * " _
& " INTO Table1 " _
& " FROM [Excel 8.0;HDR=YES;DATABASE=D:\Documents\database.xlsm].[Sheet1$];"
'Executing the query
rs.Open strAcc, cn, adOpenDynamic
実行する場合、それはエラーを取得:「リフレッシュできませんが、データベースまたはオブジェクトは読み取り専用」に次の行:
rs.Open strAcc, cn, adOpenDynamic
この問題を解決する方法はわかりません。興味深いのは、別のクエリ(既存のテーブルから選択)を実行すると完全に機能するということです。だから私は、問題は、新しいテーブルがSELECT INTO
コマンドで作成されているという事実に関連していると思います。私はまた、接続で "Mode = Share Deny None"(あなたが見るかもしれない)を書こうとしましたが、問題を解決しませんでした。