|
▼雅 さん:
アドバイスありがとうございます
やっぱりできないので、違う方法にしました
Dim MySQL As String
MySQL = "select * into T_LIST from Q_LIST;"
DoCmd.RunSQL MySQL
上記だと、うまく、テーブルが作成されるので、
前に問題かな?と思っていたクロス集計の件は、関係ないように思われました
どちらにしろ・・・ADOを使ってやりたかったけど、できないのが
残念です
>雅です。
>
>>一つお聞きしたいのですが、テーブル作成クエリをVBAで実行させようとしているのですが、使用するQ_LISTを初めから、テーブル作成クエリ(アクションクエリ)としていたのですが、これは間違いだったのでしょうか?
>>アクションクエリは使用できない・・・みたいなエラーがでてきたので、
>>普通の選択クエリに戻しました。
>
>はい。間違ってます。
>ExecuteはSQLを実行するためのメソッドなのでクエリをダイレクトに指定しては
>いけません。
>クエリのSQL文を取得して実行するのは問題ないです。
>
>>>>mySQL = "SELECT * "
>>>>mySQL = mySQL & "INTO T_LIST "
>>>>mySQL = mySQL & "FROM Q_LIST;"
>>>>
>>>>cmd.ActiveConnection = cn
>>>>cmd.CommandText = mySQL
>>
>>cmd.Execute mySQL
>>
>>にしてみました
>>でも、エラーが出るのです
>
>Q_LISTが正常な選択クエリであるならこれで問題はありません。
>Q_LISTをもとにしたテーブル作成クエリを手動で実行した場合もエラーに
>なりませんか?
>
>>クロス集計に問題があるのでしょうか?
>
>Q_LISTをもとにしたテーブル作成クエリを手動で実行した場合にも起きるので
>あれば、そうかもしれませんね。
|
|