Page 504 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼クエリについて morik 04/2/3(火) 15:18 ┗Re:クエリについて イケガミ 04/2/3(火) 15:34 ┗Re:クエリについて morik 04/2/3(火) 15:50 ┗Re:クエリについて イケガミ 04/2/3(火) 16:43 ┗Re:クエリについて morik 04/2/3(火) 17:51 ┗Re:クエリについて クロ 04/2/3(火) 18:00 ┗Re:クエリについて morik 04/2/3(火) 18:28 ┗Re:クエリについて クロ 04/2/3(火) 18:38 ┗Re:クエリについて morik 04/2/4(水) 9:06 ┣Re:クエリについて クロ 04/2/4(水) 9:23 ┗Re:クエリについて_追伸 クロ 04/2/4(水) 9:35 ┗Re:クエリについて_追伸 morik 04/2/4(水) 16:34 ─────────────────────────────────────── ■題名 : クエリについて ■名前 : morik ■日付 : 04/2/3(火) 15:18 -------------------------------------------------------------------------
現在コマンドボタンの裏で以下のようなプログラムを作成したのですがコマンドボタンを押して命令を実行させるとクエリーの実行結果が画面に表示されてしまいます。 Private Sub Open_Out_Chohyo_Click() DoCmd.SetWarnings False DoCmd.OpenQuery "クエリー" DoCmd.SetWarnings True End Sub このクエリー実行画面を表示させない方法をご存知の方ご教授お願いします。 よろしくお願いします。 |
>このクエリー実行画面を表示させない方法をご存知の方ご教授お願いします。 実行しなければいいと思いますが。 何のために、このコードを実行しているのでしょうか? |
イケガミさんいつもありがとうございます。 今回作成したクエリは追加クエリです。 このクエリで作成したデータをコマンドボタンの裏で使うのでプログラム上で実行させました。 このクエリ以外は命令を実行させた時に実行画面は表示されないのですが追加クエリのものだけ表示されてしまいます。 対処法があればご教授ください。 いつも初歩的な質問ですみません。 よろしくお願いします。 |
>追加クエリのものだけ表示されてしまいます。 "RunSQL/SQLの実行" アクション を使えば大丈夫だと思います。 |
何度もすみません。アクションクエリを調べて以下のようにしたのですがエラーがでてしまいます。 Dim sql As String sql = "SELECT 印刷用請求.*FROM 印刷用請求; " DoCmd.RunSQL sql エラー内容 実行時エラー'2342' "Run/SQLの実行"アクションを実行するには、SQLステートメントからなる引数を指定する必要があります。 やはりクエリの実行画面は消すことができないのでしょうか? あとこちらの方で試みてもだめでした。 Dim sql As String Dim dbs As Database Set dbs = Currentdb sql = "SELECT 印刷用請求.*FROM 印刷用請求; " dbs.execute sql よろしくお願いします。 |
脇からスミマセン... > sql = "SELECT 印刷用請求.*FROM 印刷用請求; " これはただの選択クエリでは? 追加クエリなら INSERT INTO...SELECT...FROM となりませんか? DoCmd.OpenQueryでもアクションクエリなら表示されませんよ |
クロさんすみません。選択クエリの間違いでした。 でもDoCmd.OpenQuery命令だと実行結果が表示されてしまいます。 選択クエリだとみんな実行結果が表示されてしまうのでしょうか? 実行結果が表示されない方法をご存知でしたらご教授ください。 よろしくお願いします。 |
>クロさんすみません。選択クエリの間違いでした。 実行結果をどうしたいのかによりますが、アクションクエリ以外は イケガミさんもおっしゃっているようにDoCmd.OpenQueryをすると 結果をビューします。 結果をどう利用したいかを書かれた方がいいかと... 結果を利用した追加クエリを別に走らせいてるなら DoCmd.OpenQueryをしなくても走りますよ |
イケガミさん、クロさん何度もすみません。 選択クエリは必要なデータを次の処理に使うテーブルに移す為に作成しました。 今回の選択クエリはデータをテーブルに移すだけなのでビューは表示してほしくありません。 DoCmd.OpenQueryにすると結果のビューが表示されてしまうので、これを表示させないようにする命令(アクションクエリ??)があれば教えていただけないでしょうか? 初歩的な質問ばかりしてすみません。 よろしくおねがいします。 |
>選択クエリは必要なデータを次の処理に使うテーブルに移す為に作成しました。 テーブルに移す処理のコードを書いてくれないとちょっと不明なのですが、 テーブルに移すとは追加クエリ? 流れとしては以下でいいのかな? (1)テーブル→(2)選択クエリ(今回の表示されるクエリ)→(3)テーブルに移す処理 テーブルに移す処理を追加クエリにするなら (2)と(3)は1つのクエリできると思いますが... 選択されたクエリをそのまま追加先テーブルを指定して追加クエリにしてしまう。 で、 Private Sub Open_Out_Chohyo_Click() DoCmd.SetWarnings False DoCmd.OpenQuery "追加クエリー" DoCmd.SetWarnings True End Sub でいいのでは? |
誤解されているようですが、 アクションクエリとは 新規・追加・削除・更新クエリなどアクションするものをいいます。 アクションクエリでないものは 選択・クロス集計クエリなどです。 ※実際にはこの他にもありますが、ここでは書きません。 で、DoCmd.OpenQueryはその名の通りクエリを開くわけですから アクションクエリであれば実行し、非アクションクエリは開くのです。 ※OpenQueryのヘルプ参照のこと DoCmd.RunSQLの場合はアクションクエリのみしか動作しません。 |
イケガミさん、クロさんありがとうございました。 クロさんのアドバイスのおかげで解決することができました。 選択クエリでクエリの種類をテーブル作成にして以下のようなプログラムにしました。 DoCmd.SetWarnings False DoCmd.OpenQuery "クエリ" DoCmd.SetWarnings True 今回のことでクエリのことを学ぶことができました。 ありがとうございました。 |