ACCESSでフォーム入力→レポート出力したい

このQ&Aのポイント
  • ACCESSを使用してフォームに入力したデータをレポートに出力する方法について教えてください。
  • フォームに入力したデータがレポートに表示されない問題があります。データを表示するにはどうすれば良いですか?
  • コマンドボタンを押してもレポートに入力したデータが表示されない場合、デザインボタンを押して再度立ち上げるとデータが書き込まれます。データをコマンドボタンを押した時に即座に表示する方法を教えてください。
回答を見る
  • ベストアンサー

ACCESSでフォーム入力→レポート出力したい

ACCESSでフォーム入力→レポート出力したい OS:XP,ACCESS2000 フォームのテキストボックスに入力した文字をレポートのテキストボックスに表示したい。 フォーム: ファイル名は「フォーム1」で、その中に作ったテキストボックス名は「入力データ」 コマンドボタン名は「レポート出力」 レポート: ファイル名は「レポート1」で、その中に作ったテキストボックス名は「出力データ」 フォーム1とレポート1を立ち上げてフォームのテキストボックスにデータを入力した後、 コマンドボタンを押してもレポート1のテキストボックスに入力したデータが表示されません。 レポート1を選択した後にデザインボタンを押し、その後にもう一度立ち上げると、 なぜかデータが書き込まれています。 コマンドボタンを押したのと同時にレポート1にデータが表示されるようにするには どうすれば良いですか? プログラムは以下の様になっております。 (1)クラスオブジェクト下 Private Sub コマンドボタン_Click() Call レポート書き出し() End Sub (2)標準モジュール下 Public Function レポート書き出し() Dim F As Form Dim R As Report Set F = Forms![フォーム1] Set R = Reports![レポート1] R![出力データ] = F![入力データ] End Function

質問者が選んだベストアンサー

  • ベストアンサー
  • noyuo
  • ベストアンサー率39% (33/84)
回答No.1

フォームとレポートを開いた後に、フォームに入力した文字をレポートに反映させたいと の質問だと理解しました。 レポートも予め開いておくのには、なにか事情があるかと思いますが、 コマンドボタンのクリックイベントで、 docmd.OpenReport レポート1 として、開くというのでは回答になりませんか?

qp4ns90
質問者

補足

>レポートも予め開いておくのには、なにか事情があるかと思いますが そうしないと、 Set R = Reports![レポート1] で、エラーが出るからです。 あらかじめ開いておかなくても、 DoCmd.OpenReport "レポート1", acViewPreview を追加すれば良いのですが、いずれにせよ、 Set R = Reports![レポート1] の前に置かなければなりません。 レポートの更新手順がわかれば良いのですけどね。 ありがとうございました。

関連するQ&A

  • Access2003のフォームからレポートに変数を渡したいのです。

    Access2003のフォームからレポートに変数を渡したいのです。 フォームに「結果」という名前の非連結コンボボックスがあり、値集合ソースは、「"承認";"却下";"保留"」です。 フォームの印刷ボタンはクリック時のイベントに以下を設定しています。 DoCmd.OpenReport ("R_レポート名"), acViewPreview このレポートでテキストボックスに「結果」の内容を表示させたいと思います。 テキストボックスのコントロールソースに、「=[Forms]![F_フォーム名]![結果]」と入れてみましたがエラーになります。 フォームのコンボボックスの値をレポートで表示させるにはどうすれば良いのでしょうか。 ご教示ください。よろしくお願いいたします。

  • access フォーム1からレコードコピー

    access2003 Win-XP フォーム1   データ1  コマンドボタン   データ2  コマンドボタン フォーム2   テキスト  フォーム1のデータを選択してコマンドボタンをクリックし、次のデータも選択クリックして  フォーム2のテキストへ書き出す。ここへは追加され、複数のデータが書き込まれるように  したいと考えています。 1つのデータを選択書き出しなら  Private Sub コマンドボタン_Click() forms![フォーム2]![データ項目] = Me.データ項目  End Sub  これでできますが、テキストにどんどん追加するにはどうすればいいでしょうか? VBの未熟者です。宜しくお願いします。  

  • フォームで入力された文字をクエリのフィールド名として反映させたい 【Microsoft Access】

    Microsoft Accessに関する質問です。バージョンは2003です。 フォーム"Fo1"に、テキストボックス"Te1"とクエリの実行を行うためのコマンドボタン"CB1"があるとします。コマンドボタン"CB1"を押すことでクエリ"Q1"が実行されるよう、イベント プロシージャに記載しています。クエリ"Q1"にはテーブル"Ta1"が表示されており、テーブル"Ta1"は複数のフィールド("Fi1","Fi2","Fi3",…)を有するものとします。 このような状況において、テキストボックス"Te1"に複数のフィールド("Fi1","Fi2","Fi3",…)のうちのどれかを記述し、コマンドボタン"CB1"を押したときに、テキストボックス"Te1"に記載されたフィールド名のデータを実行結果として出力したいと考えています。 そこで、クエリ"Q1"の「フィールド:」の部分に [Forms]![Fo1]![Te1] と記入し、「テーブル:」の部分に"Ta1"を指定した後、クエリを保存して(このときにはフィールド名の記入した部分は「式1: [Ta1].Forms![Fo1]![Te1]」と表示されています)閉じた後に、フォーム"Fo1"を開き、テキストボックス"Te1"に出力させたいフィールド名を記載しコマンドボタン"CB1"を押してみました。 すると、「パラメータの入力」というダイアログが立ち上がり、ダイアログ内には「Ta1.Forms!F01!Te1」という記述とテキストボックスが出力されました。テキストボックスに無記入で"OK"ボタンを押したところ、出力結果に「式1」という列が現れ全てのセルが空白となってしまいました。 フォームや、クエリに記入する表記が間違っているのか、そもそも出力させるフィールド名をフォームから指定するという方法が根本的に違うのかわかりません。 申し訳ありませんが、当方Accessに関しては初心者ですので、極力専門用語は少なくご教授いただければと思います。よろしくお願いします。

  • Accessのフォームとレポートについて

    Accessでフォームに学年のクラスをリストボックスで表示させ、選択してコマンドボタンを押すとそのクラスの生徒一覧がレポートとしてプレビュー表示される仕組みをつくりたいのですがどのような手順で作成していけばよいでしょうか? (表示させるための全生徒のデータテーブルは作成済みです)

  • VBからACCESSレポートの出力について

    仕事で住所録データベースを作っているところなのですが、 色々と分からないことがあるので、是非、相談に乗って下さい。 VBからACCESSレポートの出力について、行っているのですが データベースから、自分の条件にあったデータだけを取ってきたい のですが、どうしたらよいのでしょうか?? ちなみに、ACCESSのクエリを実行して、欲しいデータを取ってくる のではなく、VB上の画面に入力したデータで、ACCESSのデータを 検索を行うものです。 例えばこんな感じです。 ↓ VBで検索一覧画面から、社員番号を入力する。(テキストボックス) ↓ 実行ボタンを押したとき、テキストボックスに入った社員番号を 自動的に読み取り、ACCESSのデータベースから データを検索する。 こんな感じです。分かりにくい説明ですいませんが 宜しくお願いします。

  • フォームへの未入力を無くしたい

    [やりたいこと(宜しくおねがいします)] フォームの未入力「コンボボックス」と「テキストボックス」を事前に把握したい。 [(やりたいこと)の実現と希望] このサイトでアドバイスを頂きまして、長年に渡り作成できたデータベースが「68」、入力するフォームは「78」を超えます。現状「フォーム」の構成を生かす方法を含めアドバイスをお願いします。 [入力するフォームに共通していること] 1,コンボボックスとテキストボックス  ・全てのコンボボックスへの選択入力は必須になっている。  ・テキストボックスは未入力箇所も発生する。「未入力箇所は不特定」 2,フォームに共通して配している2つのコマンドボタン  ・フォームを閉じるボタン「マクロ(クリック時)」  ・情報の最新化ボタン「マクロ(クリック時)」   ※コンボボックスの選択項目追加時に反映用として配置 以上ですが、宜しくお願いします。

  • ACCESS フォームの入力で

    フォームの入力でコード番号を入力すると項目が自動入力出来るようにしたくて 2つ目のテキストボックスのコントロールソースに=DLookUp("[商品名]","テーブル2","[商品コード] = [コード] ")と入力したのですが 1つ目のテキストボックスに入力すると そのときは2つ目のテキストボックスは白紙で 一度フォームを閉じてから立ち上げると2つ目のテキストボックスにも入力されています。 これは閉じないと入力されないのでしょうか? 1つ目を入力した後に表示されるようにしたいのですが・・・。 よろしくお願いします。

  • アクセス2000のレポートについて

    アクセス2000でデータベースを作成しています。 保存したデータをもとにして、お客さんへの通知書をレポートとして出力したいのですが、テキストボックス内のデータの長さがレコードによって大きく異なっています。 レポートで出力する時に、テキストボックス内のデータ量に応じてテキストボックスの高さを自動調整することはできないのでしょうか?

  • ACCESSで表示されているフォームだけをレポートに出したい

    アクセスで、入力したフォーム内容をすぐにレポートで印刷できるよう、コマンドボタン作成ウィザードで、レポートの操作→レポートのプレビューを行ったのですが、IDが1のものが表示されてしまいます。。 これを、表示されているフォームIDのものをプレビューさせることはできますでしょうか? 色々調べてみたのですが、分からなかったので。。 宜しくお願いします!

  • アクセスのレポート出力について

    いつも楽しく拝見しています。 質問させてください。 アクセスのレポートについてなのですが、今フォームのボタンを押すと「納品書」と言うレポートが出力されるようになっています。 これをフォームのボタンを押すと「納品書」と「納品書控え」と言う2つのレポートを出力したいと考えています。 試しに自分でやってみると、2つのレポートは別々のウィンドウで表示され、印刷ボタンを2回押せば可能な所まできました。 出来れば、これを改良し、 フォームのボタンを押す→レポートが表示(納品書と納品書控えが同じウィンドウにて続けて表示される)→印刷(納品書と納品書控えが出力される) と言う形にしたいと考えております。 これは可能なことなのでしょうか? また、可能な場合、どのような仕込が必要なのでしょうか? おわかりになる方いらっしゃいましたら、ご教授ください。 よろしくお願いいたします。

専門家に質問してみよう