過去ログ

                                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


このクエリー実行画面を表示させない方法をご存知の方ご教授お願いします。

よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : イケガミ  ■日付 : 04/2/3(火) 15:34  -------------------------------------------------------------------------
   >このクエリー実行画面を表示させない方法をご存知の方ご教授お願いします。

実行しなければいいと思いますが。
何のために、このコードを実行しているのでしょうか?

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : morik  ■日付 : 04/2/3(火) 15:50  -------------------------------------------------------------------------
   イケガミさんいつもありがとうございます。

今回作成したクエリは追加クエリです。
このクエリで作成したデータをコマンドボタンの裏で使うのでプログラム上で実行させました。

このクエリ以外は命令を実行させた時に実行画面は表示されないのですが追加クエリのものだけ表示されてしまいます。

対処法があればご教授ください。

いつも初歩的な質問ですみません。

よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : イケガミ  ■日付 : 04/2/3(火) 16:43  -------------------------------------------------------------------------
   >追加クエリのものだけ表示されてしまいます。

"RunSQL/SQLの実行" アクション
を使えば大丈夫だと思います。

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : morik  ■日付 : 04/2/3(火) 17:51  -------------------------------------------------------------------------
   何度もすみません。アクションクエリを調べて以下のようにしたのですがエラーがでてしまいます。

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

よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : クロ  ■日付 : 04/2/3(火) 18:00  -------------------------------------------------------------------------
   脇からスミマセン...

>  sql = "SELECT 印刷用請求.*FROM 印刷用請求; "
これはただの選択クエリでは?
追加クエリなら
INSERT INTO...SELECT...FROM
となりませんか?

DoCmd.OpenQueryでもアクションクエリなら表示されませんよ

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : morik  ■日付 : 04/2/3(火) 18:28  -------------------------------------------------------------------------
   クロさんすみません。選択クエリの間違いでした。

でもDoCmd.OpenQuery命令だと実行結果が表示されてしまいます。
選択クエリだとみんな実行結果が表示されてしまうのでしょうか?

実行結果が表示されない方法をご存知でしたらご教授ください。
よろしくお願いします。

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : クロ  ■日付 : 04/2/3(火) 18:38  -------------------------------------------------------------------------
   >クロさんすみません。選択クエリの間違いでした。
実行結果をどうしたいのかによりますが、アクションクエリ以外は
イケガミさんもおっしゃっているようにDoCmd.OpenQueryをすると
結果をビューします。
結果をどう利用したいかを書かれた方がいいかと...

結果を利用した追加クエリを別に走らせいてるなら
DoCmd.OpenQueryをしなくても走りますよ

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : morik  ■日付 : 04/2/4(水) 9:06  -------------------------------------------------------------------------
   イケガミさん、クロさん何度もすみません。

選択クエリは必要なデータを次の処理に使うテーブルに移す為に作成しました。

今回の選択クエリはデータをテーブルに移すだけなのでビューは表示してほしくありません。

DoCmd.OpenQueryにすると結果のビューが表示されてしまうので、これを表示させないようにする命令(アクションクエリ??)があれば教えていただけないでしょうか?

初歩的な質問ばかりしてすみません。

よろしくおねがいします。

 ───────────────────────────────────────  ■題名 : Re:クエリについて  ■名前 : クロ  ■日付 : 04/2/4(水) 9:23  -------------------------------------------------------------------------
   >選択クエリは必要なデータを次の処理に使うテーブルに移す為に作成しました。
テーブルに移す処理のコードを書いてくれないとちょっと不明なのですが、
テーブルに移すとは追加クエリ?

流れとしては以下でいいのかな?
(1)テーブル→(2)選択クエリ(今回の表示されるクエリ)→(3)テーブルに移す処理

テーブルに移す処理を追加クエリにするなら
(2)と(3)は1つのクエリできると思いますが...
選択されたクエリをそのまま追加先テーブルを指定して追加クエリにしてしまう。
で、
Private Sub Open_Out_Chohyo_Click()

      DoCmd.SetWarnings False
      DoCmd.OpenQuery "追加クエリー"
      DoCmd.SetWarnings True
  
End Sub
でいいのでは?

 ───────────────────────────────────────  ■題名 : Re:クエリについて_追伸  ■名前 : クロ  ■日付 : 04/2/4(水) 9:35  -------------------------------------------------------------------------
   誤解されているようですが、
アクションクエリとは
新規・追加・削除・更新クエリなどアクションするものをいいます。
アクションクエリでないものは
選択・クロス集計クエリなどです。
※実際にはこの他にもありますが、ここでは書きません。

で、DoCmd.OpenQueryはその名の通りクエリを開くわけですから
アクションクエリであれば実行し、非アクションクエリは開くのです。
※OpenQueryのヘルプ参照のこと

DoCmd.RunSQLの場合はアクションクエリのみしか動作しません。

 ───────────────────────────────────────  ■題名 : Re:クエリについて_追伸  ■名前 : morik  ■日付 : 04/2/4(水) 16:34  -------------------------------------------------------------------------
   イケガミさん、クロさんありがとうございました。

クロさんのアドバイスのおかげで解決することができました。

選択クエリでクエリの種類をテーブル作成にして以下のようなプログラムにしました。

      DoCmd.SetWarnings False
      DoCmd.OpenQuery "クエリ"
      DoCmd.SetWarnings True

今回のことでクエリのことを学ぶことができました。

ありがとうございました。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 504