• 締切済み

Accessのレポートでページセレクタが動作しない

初めての質問をさせて頂きます。 Access2016のレポートに関して質問させて頂きます。 レポートウィザードを使用して表形式のレポートを作成しようとしたのですが項目数が多いため作成エラーになってしまい単票形式でレポートを作成しました。 作成時に使用したクエリでは条件に従い複数レコードを抽出するようにしています。 項目を横一列にして最大表示行数を30行(30行目で改ページ)にしています。 上記で作成したレポートをフォームと親子関係にしてフォーム上にレポートプレビューを表示するようにしました。 ここまでは想定通りに動作をするのですがレポートプレビューの時に表示されるページセレクタで問題が発生しました。 矢印ボタンで次ページ移動、前ページ移動、最終ページ移動、最前ページ移動、現在ページの表示は問題ないのですが、直接ページ数を入力すると何故かページ数でなくレコード数として扱われ行の先頭に指定した数値のレコードから改ページまでが表示されてしまいます。また印刷ダイアログでページ指定をしても同様の現象が発生してしまいます。 レポートのグループ化や並び順などの条件はすべて削除しています。 レポートウィザードで単票形式で作成したのが問題ではないかと予測しているのですが、レポートのプロパティでは単票形式、表形式、帳票形式の選択肢がないのでどのようにすれば解決できるのか見当もつかない状態になってしまっています。 解決方法を知っていらっしゃる方がおられましたら是非お知恵をかして頂ければ幸いです。 どうか宜しくお願いいたします。

みんなの回答

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.3

>レポートウィザードを使用して作成しています。  テーブルの項目数は、256以下なんですが、  表形式で作成を行うと最後の完了ボタンをクリックしてたあと、  項目が多すぎるとエラーでレポートの作成が出来ません。  単票形式で作成すると問題なく作成されます。 ★レポートウィザードの作成過程で添付のようなスッテプが有ります。  ここで「(チェックボックス チェック)すべてのフィールドを1ページ内に収める」を□にします。 >フォームだと単票と表形式をプロパティで変更出来るのですが、  レポートではそのような項目がプロパティにないので  レポートは単票形式のままにしています。 ★ページ幅に制約があるので止むを得ないでしょうね >ページセレクタの矢印で移動する場合はページ遷移するのですが、  直接ページ数入力、または印刷ダイアログのページ数を指定すると  ページではなく指定したページ番号がレコード番号として先頭ページの  先頭行にきてしまうというのが問題です。 ?☆レコード番号は連番ですか >レポートとフォームの親子関係の話ですがフォーム上にレポートウィザードを  表示するためにウィンドウの親子関係にしています。  これはwindowsが用意しているDLLを使用しています。 ?☆確認できませんでした。  このフォームとレポートは単体(親子関係なし)で機能しますか

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.2

今晩は >レポートウィザードを使用して作成しています。 ★表形式のレポートウィザードは1レコード1行の制限有ります。 >表形式で作成を行うと最後の完了ボタンをクリックしてたあと、 >項目が多すぎるとエラーでレポートの作成が出来ません。 >単票形式で作成すると問題なく作成されます。 ★こんなに沢山のフィールド数は経験ありません。  あくまで推測ですが、プリンタの印字幅の制限からでしょう。  自分はA4版対応のプリンタを使用していますが、  1行に印字できる文字数はMSPゴシック11ポイント半角で100文字が限度です ★対策 決定的な対策は無いですが 1.ポイント数をより小さくする 2.用紙の印字方向を横にする 3.フィールドを分割して複数のレポートを作成する  この際印字後つなぎ合わせの為、主キーを各レポートに配置する 4.ウィザードを諦め、1レコード複数行の表形式のレポートをデザインする >フォームだと単票と表形式をプロパティで変更出来るのですが  ページセレクタの矢印で移動する場合はページ遷移するのですが、  直接ページ数入力、または印刷ダイアログのページ数を指定すると  ページではなく指定したページ番号がレコード番号として  先頭ページの先頭行にきてしまうというのが問題です。 ★直接ページ数入力されている枠はレコード番号の枠ではないですか?  入力枠を再確認してください >レポートとフォームの親子関係の話ですがフォーム上にレポートウィザードを  表示するためにウィンドウの親子関係にしています。 これはwindowsが用意しているDLLを使用しています。 ★知りませんでした。後程確認します。

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.1

こんにちは 失礼ながら、ACCESSを色々混乱されているようです。 >項目数が多いため  テーブルのフィールド数のことですね、最大フィールド数は255です。  具体的にフィールドの数はいくつですか  Excelのワークシートをコピペしたのではないですか  テーブルを開いて右端のセルまでコピペされているか確認ください >項目を横一列にして最大表示行数を30行(30行目で改ページ)  通常A4縦長で50行位印刷できると思います。単票形式にすると改頁処理をしなくともよいのでは >レポートをフォームと親子関係にしてフォーム上にレポートプレビューを表示するようにしました。  こんなことが出来ますか?  レポートはレポートだけで完結し、フォームはフォームだけで完結するものです  ?親子関係何ですかこれ  最もレポートとサブレポート。フォームとサブフォームはありますが、  それぞれのレコードソースのテーブルが1対Nのリレーションシップが定義されている必要が有ります。

kaz_eno_1971
質問者

補足

ご回答ありがとうございます。 まずレポートなんですが、レポートウィザードを使用して作成しています。テーブルの項目数は、256以下なんですが、表形式で作成を行うと最後の完了ボタンをクリックしてたあと、項目が多すぎるとエラーでレポートの作成が出来ません。単票形式で作成すると問題なく作成されます。 フォームだと単票と表形式をプロパティで変更出来るのですが、レポートではそのような項目がプロパティにないのでレポートは単票形式のままにしています。ページセレクタの矢印で移動する場合はページ遷移するのですが、直接ページ数入力、または印刷ダイアログのページ数を指定するとページではなく指定したページ番号がレコード番号として先頭ページの先頭行にきてしまうというのが問題です。 レポートとフォームの親子関係の話ですがフォーム上にレポートウィザードを表示するためにウィンドウの親子関係にしています。これはwindowsが用意しているDLLを使用しています。 質問の内容が不足していて申し訳ございません。

関連するQ&A

  • ACCESSで帳票形式のレポートを作りたい

    ACCESS2000で帳票形式のレポートを作成したいと思っています。 細かい設定をしたいのでウィザードからではなく、デザインビューから 作成したんですが、データが単票形式で出てしまい、1レコードで 1枚しか印刷されません。 帳票形式へ変換するにはどうすればよいのでしょうか?

  • Access2003レポート:最終ページへ移動

    Accessにてレポートを作成しています。 印刷プレビューの[最終行へ移動]ボタンの動作を 印刷プレビュー呼び出し元フォームからVBAで行えませんでしょうか。 ※[印刷]ボタンを押下して遷移。 やりたい事は、ページの最後に横線を引くことです。 詳細_Printより、印刷用のworkテーブルに ページ最終行の場合はフラグをアップデートし、 再度レポートを作成してフラグのある場合横線を引く、という構想をしていました。 印刷が2ページに渡る場合、 2ページ目以降のレコードの詳細_Printのイベントは ページを移動させるまで発生しなかったため質問させていただきました。 縦・横線を条件付で結合等させて表示させたかったため、 詳細のlineメソッドを使って線を引いています。 また、質問内容が実現可能であれば 索引作成にも使用したいと思っています。 宜しくお願いいたします。

  • ACCESSのレポートでの表示について

    1つのレコードに複数のフィールドを作り、帳票フォームを作成し、それをレポートにしました。 レポートで表示すると、1ページに複数のレコードの内容が表示されています。 そこで、それぞれのレコードには空欄のフィールドが多くあるので、データが入力されてあるフィールドのみを表示させていきたのですがどうすればよいでしょうか。 そうやってつめる事によって1ページに表示されるレコード数を増やしていきたいのですが・・・・・。 よきアドバイスお願いいたします。

  • accessのレポートについて教えてください。

    こんにちは。 今、アクセスにてフォームを印刷するためのレポートの編集をしています。何件か登録して、そろそろ印刷してみようかなぁと思っていてプレビューを作成しましたが、そこで困ったことに気がつきました。 それは、フォームに登録したレポートが現在6件あるのですが、 6件目の途中のレコードでページが変わってしまい、2ページ目の始まりがとても中途半端な感じがしてしまいます。 そこで質問ですが、 アクセスのレポート作成の際に、途中の項目でページ変更しないように設定する事はできますか? VBとかモジュールとかマクロとかは使用した経験がほとんどない初心者です。 どうか、よい方法を教えてください。

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

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

  • ACCESS 単票形式のレポート

    ACCESSで単票形式のレポートと言えば、1ページに1レコードだと思いますが、なぜか1ページに複数レポートがズラズラーッと出てきます。 オートレポートで作成しても同じです。 どうしたら、1ページに1レコードが印刷できますか? また、レポートの「詳細」セクションの「改ページ」を「カレントセクションの後」としたら、2ページ目以降にレポート名が印刷されないんですが、2ページ目以降もレポート名が印刷されるようにするにはどうしたらいいですか?

  • Access レポートウィザード

    Windows2003XP(SP2)・Access2003 レポートウィザードでレポートを作成するとレポートフッターのテキストボックスに↓↓↓ =[Page] & "/" & [Pages] & "ページ" と入力され、印刷プレビューに切り替えると↓↓↓ 現在のページ数/総ページ数 ページ が表示されています。 []で囲われているということはどこかにPageというフィールドが あるのでしょうか? あるいはどこでソレを制御しているのでしょうか? どなたかご存知でしたらご教授いただけますと大変助かります。 よろしくお願いいたします。

  • アクセス2007のレポート

    アクセス2007を使ってレポート(葉書)印刷をしようと、「作成」メニューから「はがきウィザード」にしたがってレポートを作成し、いざ印刷プレビューを行うと、「このデータベースは署名されていないか、信頼できる場所にありません。そのため、このレポートの一部の項目を表示できません。」というメッセージが出て、宛名が表示されません。 この原因と対策について、ご教示ください。よろしくお願いします。

  • ACCESS 指定レコードのレポート印刷

    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パラメータポップアップも表示させたくありません。

  • Accessのレポートプレビュー画面で総ページ数の表示をしたい。

    Accessのレポートプレビュー画面で総ページ数の表示をしたい。 Access2007のレポートのプレビュー画面で、ぱっと見で総ページがわかるようにしたいです。 画面下部にあるレコードセレクタの横あたりに、総ページ数が表示できればベストなんですが、 実現する方法はありますでしょうか?

専門家に質問してみよう