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

いつもお世話になります。
アクセス2003で納品チェックがOnになっているレコードのみ金額の合計を出したいのですが、うまくいきません。
フォーム「未納」はレコードソースが選択クエリ「未納」からなる帳票フォームです。
納品チェックをOnにしたら、今日の日付が納品日に入るようにし、Offの場合は空欄にしてあります。
納品完了のコマンドボタンのフォーカス取得後にマクロで、条件に[納品チェック]=On、アクションに値代入、アイテムに[Forms!]![未納]![テキスト48]、式にDSum("価格*個数","未納","納品チェック=On")としているのですが、訂正をお願いします。テキスト48は「未納」フォーム上にある非連結のテキストです。またこの方法以外でもいろいろためしてみますのでどなたか教えてください。よろしくお願いいたします。

A 回答 (1件)

まず、すごく細かいところから(汗)



> アイテムに[Forms!]![未納]![テキスト48]

単に打ち間違いだと思いますが、「Forms」の直後の、「[ ]」内に入っている「!」は
無用です。
  [Forms]![未納]![テキスト48]
として下さい。
(「[Forms!]!」と「[Forms]!」の違い:見た目わかりにくいので全角にしてみました)


次に、恐らく本題になりますが、

> 条件に[納品チェック]=On

ここで確認する『納品チェック』は、恐らく『未納』フォーム上にあるものだと思います
ので、『値の代入』アクションの『アイテム』の式と同様に「[Forms]!~」をつけて、
  [Forms]![未納]![納品チェック]=On
とする必要があります。
(VBAで当該フォームに記述する場合はなくてもOkなのですが、マクロの場合は
 必須です)

なお、もしもデータ表示にサブフォームを使用していて、『納品チェック』もその中に
設置している場合は、
  [Forms]![未納]![サブフォーム名]![納品チェック]=On
という形にします。
(ここでの「サブフォーム名」は、サブフォームの表示に使用しているフォームの
名前ではなく、コントロールとしての名前になります:
プロパティシートの『その他』タブで『名前』欄に表示される名前です)


『値の代入』アクションの『式』の方は、現状のままで問題ありません。
(そちらの中の第3引数の「納品チェック=On」は、『未納』クエリの『納品チェック』
フィールドを参照しているので、このままでOk、ということになります:
「[Forms]!~」をつけると、逆に正しい結果が得られなくなります)
    • good
    • 0
この回答へのお礼

大変丁寧なご回答をありがとうございました。細かいところまで説明してくださって本当にたすかりました。自分では何度しても同じように記述していたので本当によかったです。ありがとうございました!!!またこれからもよろしくお願いいたします。

お礼日時:2010/11/13 10:27

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