アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんばんは、ACCESS2003のグループ化について助言をお願いします。
(OS:WIN7)

”TBL1”から抽出して”クリエ1”を作成したものがあります。
この”クリエ1”からさらに”クリエ2”を抽出して、フォームから入力できるように”フォーム1”を作成しました。
(”クリエ1”は他の方が作成したのを借りている状態です。)

”クリエ2”には”日付”、”商品番号”、”単価”があり、”フォーム1”で使えるように
”クリエ2”の各項目に以下のように抽出条件を設定、フォームから入力出来るようにしました。

<日付>
Between nz([forms]![f_kensaku]![day_s]) And nz([forms]![F_kensaku]![day_e],#2099/12/31#)
(空欄でも表示されるように”Nz()”を使いました。)

<商品番号>
Like "*" & [Forms]![f_kensaku]![shouhin] & "*"

<単価>
Like "*" & [Forms]![f_kensaku]![tanka] & "*"

”フォーム1”及び”クリエ2”から実行して問題なく検索できるのですが
日付、商品番号、単価が重複して見ず来らいので、”クリエ2”の”Σ”からグループ化を実行するとエラーとなってしまいます。

<エラー表示内容>
集計関数の一部として指定された式(上記3個のSQL文が表示)を含んでいないクエリを実行しようとしました。

当然、グループ化を外すと問題なく動くのですが、何が悪いのでしょうか?

A 回答 (1件)

普通はエラーにならないですね。


フィールドの集計は全てグループ化にしてますよね。

とりあえずSQL文を提示されたら何か分かるかもしれません。

重複を排除する方法は、グループ化以外に、クエリプロパティの「固有の値」を「はい」にするというのもありますのでそちらも試してみてはどうでしょうか。


あと、気になったのは、

> ”クリエ2”の各項目に以下のように抽出条件を設定、フォームから入力出来るようにしました。

との事ですが、重複を排除する(グループ化でも固有の値でも)と、入力はできなくなりますけど、いいのですか。

この回答への補足

助言ありがとうございます。

SQLコードはこうなります。
<動くSQLコード>
SELECT [大井 grand 抜き].処理日, [大井 grand 抜き].TRACE号機, [大井 grand 抜き].業務
FROM [大井 grand 抜き]
WHERE ((([大井 grand 抜き].処理日) Between nz([forms]![f_kensaku]![day_s]) And nz([forms]![F_kensaku]![day_e],#12/31/2099#)) AND (([大井 grand 抜き].TRACE号機) Like "*" & [Forms]![f_kensaku]![gouki] & "*") AND (([大井 grand 抜き].業務) Like "*" & [Forms]![f_kensaku]![g_no] & "*"))
ORDER BY [大井 grand 抜き].処理日 DESC , [大井 grand 抜き].TRACE号機, [大井 grand 抜き].業務;


<動かないSQLコード>
SELECT [大井 grand 抜き].処理日, [大井 grand 抜き].TRACE号機, [大井 grand 抜き].業務
FROM [大井 grand 抜き]
GROUP BY [大井 grand 抜き].処理日, [大井 grand 抜き].TRACE号機, [大井 grand 抜き].業務
HAVING ((([大井 grand 抜き].処理日) Between nz([forms]![f_kensaku]![day_s]) And nz([forms]![F_kensaku]![day_e],#12/31/2099#)) AND (([大井 grand 抜き].TRACE号機) Like "*" & [Forms]![f_kensaku]![gouki] & "*") AND (([大井 grand 抜き].業務) Like "*" & [Forms]![f_kensaku]![g_no] & "*"))
ORDER BY [大井 grand 抜き].処理日 DESC , [大井 grand 抜き].TRACE号機, [大井 grand 抜き].業務;


前回の説明で簡略する為、日付、商品番号、単価としましたが
下手にいじると私が混乱しそうなので、ソースを記載します。

クリエ2=大井 grand 抜き
日付=処理日(”day_s”が検索開始日、”day_e”が検索終了日となります。)
商品番号=TRACE号機
単価=業務

> ”クリエ2”の各項目に以下のように抽出条件を設定、フォームから入力出来るようにしました。
との事ですが、重複を排除する(グループ化でも固有の値でも)と、入力はできなくなりますけど、いいのですか。

コンボボックスの”値集合リスト”及び”値集合ソース”に直接、該当する名前や数値をいれているので問題ありません。

>重複を排除する方法は、グループ化以外に、クエリプロパティの「固有の値」を「はい」にするというのもありますのでそちらも試してみてはどうでしょうか。
これも試してみましたが、だめでした。

お力を貸してください、よろしくお願いします。

補足日時:2012/02/13 15:25
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A