過去ログ

                                Page      20
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼SQL文でクエリを作成したいのですが。  niko 02/9/10(火) 15:57
   ┗Re:SQL文でクエリを作成したいのですが。  イケガミ 02/9/10(火) 16:09
      ┣すみません  niko 02/9/10(火) 16:17
      ┗Re:SQL文でクエリを作成したいのですが。  niko 02/9/11(水) 9:53

 ───────────────────────────────────────
 ■題名 : SQL文でクエリを作成したいのですが。
 ■名前 : niko
 ■日付 : 02/9/10(火) 15:57
 -------------------------------------------------------------------------
   こんにちは。
アクセスVBA初心者なためどこを直せばいいのかわかりません。
ご示唆ねがいます。

デザインモードで抽出クエリを作ったものをSQLビューで表示させ
コピーし、VBA上にペーストし手直しをしたものがmySQL
です。

これを実行すると実行時エラー3075
クエリ式の構文エラー;演算子がありません。
と表示されます。

テーブルの名前が長かったりしてわかりづらいかとは
思いますがこのまま載せてみました。
どこを修正すればよいのか教えてください。

Sub MyCreateQuery()
  Dim myDB As Database, myQdf As QueryDef
  Dim mySQL As String
  Const QryName = "Q_売上"
  On Error GoTo DelQryName
  
  mySQL = "SELECT T_販売実績.支店コード, T_支店.支店名, [T_販売実績]![事業所コード] - " & _
      "[T_販売実績]![得意先統一コード] - [T_販売実績]![得意先枝番コード] AS 得意先コード, " & _
      "T_販売実績.得意先名, Sum(T_販売実績.[当年数量(1)]) AS [当年数量(1)の合計], " & _
      "Sum(T_販売実績.[前年数量(1)]) AS [前年数量(1)の合計], Sum(T_販売実績.[当年数量(2)]) AS" & _
      "[当年数量(2)の合計], Sum(T_販売実績.[前年数量(2)]) AS [前年数量(2)の合計]," & _
      "Sum(T_販売実績.[当年数量(5)]) AS [当年数量(5)の合計], Sum(T_販売実績.[前年数量(5)]) AS" & _
      "[前年数量(5)の合計], Sum(T_販売実績.[当年数量(11)]) AS [当年数量(11)の合計]," & _
      "Sum(T_販売実績.[前年数量(11)]) AS [前年数量(11)の合計], Sum(T_販売実績.[当年金額(14)]) AS" & _
      "[当年金額(14)の合計], Sum(T_販売実績.[前年金額(14)]) AS [前年金額(14)の合計], Q_取引開始.取引開始月" & _
      "FROM (T_販売実績 LEFT JOIN Q_取引開始 ON (T_販売実績.得意先枝番コード = Q_取引開始.得意先枝番コード)" & _
      "AND (T_販売実績.得意先統一コード = Q_取引開始.得意先統一コード) AND (T_販売実績.事業所コード = Q_取引開始.事業所コード))" & _
      "LEFT JOIN T_支店 ON T_販売実績.支店コード = T_支店.支店コード" & _
      "WHERE (((T_販売実績.順位) <= 12) And ((T_販売実績.不要フラグ) = False))" & _
      "GROUP BY T_販売実績.支店コード, T_支店.支店名, [T_販売実績]![事業所コード] " & _
      "[T_販売実績]![得意先統一コード] - [T_販売実績]![得意先枝番コード], T_販売実績.得意先名, Q_取引開始.取引開始月;"

  
 Set myDB = CurrentDb
 Set myQdf = myDB.CreateQueryDef(QryName, mySQL)
 DoCmd.OpenQuery QryName
 Exit Sub

DelQryName:
 DoCmd.DeleteObject acQuery, QryName
 Resume

end sub

 ───────────────────────────────────────  ■題名 : Re:SQL文でクエリを作成したいのですが。  ■名前 : イケガミ <ikegami_kumamoto@dosule.com>  ■日付 : 02/9/10(火) 16:09  -------------------------------------------------------------------------
   #バージョンは何でしょうか?

SQL文をVBAで作成する場合の注意点です。(思いついたものだけ)
1 各項目の前後に半角スペースを必ず入れる
2 怪しい項目名(半角カナとか、全角1文字でのNoとか)は、
  []でくくる
3 Forms!〜とかで参照している場合、""の外にだす
  (今回のはないみたいですが。。)

空白が足りないものがいくつかあるみたいです。

 ───────────────────────────────────────  ■題名 : すみません  ■名前 : niko <ryo_nyanko@yahoo.co.jp>  ■日付 : 02/9/10(火) 16:17  -------------------------------------------------------------------------
   >#バージョンは何でしょうか?
バージョンはAccess2000でWin98上で動かしています。

>SQL文をVBAで作成する場合の注意点です。(思いついたものだけ)
>1 各項目の前後に半角スペースを必ず入れる
>2 怪しい項目名(半角カナとか、全角1文字でのNoとか)は、
>  []でくくる
>3 Forms!〜とかで参照している場合、""の外にだす
>  (今回のはないみたいですが。。)
>
>空白が足りないものがいくつかあるみたいです。
ありがとうございます。
ちょっと見直しをしてみます。

 ───────────────────────────────────────  ■題名 : Re:SQL文でクエリを作成したいのですが。  ■名前 : niko  ■日付 : 02/9/11(水) 9:53  -------------------------------------------------------------------------
   イケガミさん、どうもありがとうございました。
空白を挿入したらうまく動きました。
これからもよろしくお願いします。

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