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

OKWaveでも他の方が質問していますが、同様な対応をしても、どうも正常動作しません。
内容:1.フォーム作成完了 → 2.レポート作成完了 → 3.現在フォームに表示されているレコードを(2)で作成したレポート形式で印刷(プレビュー)をしたい。
レポート名:看板
フォーム名:管理    フォーム画面上には ID を表示させています。
テーブル名:管理TBL 管理TBLには ID というフィールドはあります。
実施内容:下記内容を印刷コマンドボタンのイベントプロシジャーに記述。
Private Sub report_Click()
Dim stDocName As String
  DoCmd.OpenReport "看板", acViewPreview, , "[ID]=" & [Forms]![管理]![ID]
End Sub

例えば、レコード3のフォーム上で上記内容のコマンドボタンをクリックすると、IDのパラメータのポップアップが表示され3を入力後、看板のレポートプレビューが表示されますが、固定データのみ表示されているレポートで当該レコードの内容が反映されたレポートが表示されません。
レコード1のフォーム上で実施したら、IDパラメータポップに1を入れると全レコードのレポートがプレビューされます。 どうしたら、カレントレコードの内容のみを反映したレポートをプレビューさせることができるのでしょうか、ご教授下さい。また IDパラメータポップアップも表示させたくありません。

A 回答 (3件)

私は初心者ですが、・・・・・・・。

レポートのもとになるのは、テーブルかクエリーです。だからクエリーでほしいデータを作ってから、レポートに渡すようにしてみたらどうですか。
    • good
    • 0
この回答へのお礼

IDがレポートソースにありませんでした。 助言ありがとうございました。

お礼日時:2011/01/12 16:58

基本的には、


画面に出たものとレポートと同じものを出したいという趣旨でしょうか?。
フォームのレコードソース

レポートのレコードソース
は同じになっていますか?。

フォームでIDを入力しその分だけ出したい、なら
レコードソースは共にクエリで、抽出条件もつけます。

例えば、
フォームですべてのレコード表示、
→ID入力
→クエリでそのID分だけで抽出し、フォームにそのID分のみで再表示
ということをしたいときは「再クエリ」という指示をします。

>IDパラメータポップアップも表示
これは実際のテーブルのフィールド名とコードの記述が違っていたりしたとき出ます。
半角全角を確認してみてはどうでしょう。



不明なときはいったん条件をはずして、
フォームで全件表示、そのままレポートにも全件表示できる形を確立してから、
抽出条件を付与します。
そうするとたとえ間違えても間違えた箇所が絞られるので比較的対処早いです。
今はどこでおかしくなったかわけわからないのかと思われます。
    • good
    • 0
この回答へのお礼

フォームとレポートの共通Keyが一致してませんでした。
回答ありがとう御座います。

お礼日時:2011/01/12 16:57

IDのパラメータ入力画面が表示される


ということはレポートのレコードソースに
IDというフィールドが無いために表示
されます。レポートのテキストボックスの
名前でも、フォームのテキストボックスの
名前でも、フォームのレコードソースの
フィールドの名前でもありません。

>DoCmd.OpenReport "看板", acViewPreview, , "[ID]=" & [Forms]![管理]![ID]



>"[ID]=" & [Forms]![管理]![ID]

について説明しますと、等号の左の[ID]のIDは
レポートのレコードソースのフィールド名です。
レポートのレコードソースのフィールド名にID
があるならば、式は成り立ちます。
レポートのテキストボックスの名前では
ありません。つまり、IDという名前のテキストボックス
が無くてもレポートにフィルタがかけられ、レポートには
フォームで指定した[ID]のレコードが表示される
ことになります。

レポートのレコードソースにIDではなく、IDに相当するものが
番号という名前のフィールド名ならば、

>"[ID]=" & [Forms]![管理]![ID]

は、

>"[番号]=" & [Forms]![管理]![ID]

のようにしないとパラメータが表示され、
それにたとえば、1と入力してもすべて
のレコードが表示されることになります。

一度、レポートのレコードソースのフィールド名
を確認されてみたらいかがでしょうか。
    • good
    • 0
この回答へのお礼

レポートソース側にIDがありませんでした。 フォーム側とレポート側で一致させるKeyがなった為、発生していたのですね。 
レポート側に共通のKey(ID)を設定することで、レポート出力されました。
ありがとうございました。

お礼日時:2011/01/12 16:53

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