半角のカッコを使ってテーブル名を名付けてしまったの
半角のカッコを使ってテーブル名を名付けてしまったのですがADOでエラーになります。
試しに、
半角()
全角()
と言うテーブルを作成して、
Sub test()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
cn.Open "Provider = Microsoft.ACE.OLEDB.12.0;" & "Data Source= " & CurrentProject.FullName
rs.Open "全角()", cn, adOpenKeyset, adLockOptimistic
rs.Close: Set rs = Nothing
cn.Close: Set cn = Nothing
End Sub
としたら、全角()の場合は問題なく動きました。
しかし、
rs.Open "半角()", cn, adOpenKeyset, adLockOptimistic
にした場合は
---------------------------------------------------------------------
実行時エラー'-2147217900(80040e14)':
SQLステートマントが正しくありません。'DELET','INSERT','PROCEDURE','SELECT',
または'UPDATE'を使用してください。
---------------------------------------------------------------------
となります。
実はたくさんのテーブル名とクエリ名に半角カッコを使ってしまって、
治す方が手間がかかるので、ADOで半角カッコを使えるのなら使いたいのです。
オブジェクト名でも使用できる方法・読み取れる方法が知りたいのですが、ご存知でしょうか?
お礼
ありがとうございます。