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 |
#バージョンは何でしょうか? SQL文をVBAで作成する場合の注意点です。(思いついたものだけ) 1 各項目の前後に半角スペースを必ず入れる 2 怪しい項目名(半角カナとか、全角1文字でのNoとか)は、 []でくくる 3 Forms!〜とかで参照している場合、""の外にだす (今回のはないみたいですが。。) 空白が足りないものがいくつかあるみたいです。 |
>#バージョンは何でしょうか? バージョンはAccess2000でWin98上で動かしています。 >SQL文をVBAで作成する場合の注意点です。(思いついたものだけ) >1 各項目の前後に半角スペースを必ず入れる >2 怪しい項目名(半角カナとか、全角1文字でのNoとか)は、 > []でくくる >3 Forms!〜とかで参照している場合、""の外にだす > (今回のはないみたいですが。。) > >空白が足りないものがいくつかあるみたいです。 ありがとうございます。 ちょっと見直しをしてみます。 |
イケガミさん、どうもありがとうございました。 空白を挿入したらうまく動きました。 これからもよろしくお願いします。 |