質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

1回答

5407閲覧

access サブレポートについて。

bee96

総合スコア8

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2020/10/13 04:39

編集2020/10/13 23:38

accessについてです。

レポートの中にサブレポートが4つあり、社員の様々な履歴として表示させています。
しかし、サブレポートのレコードソースになっているテーブルにレコードがないと
その社員のサブレポートが白紙で出力されます。

これを、レコードがない場合でもサブレポートの枠自体は残すようにしたいのですが
実装できる方法はありますでしょうか。

よろしければ回答をお願いします。

![イメイメージ説明

上記の画像において、左がレイアウトビューでのサブレポート、右が印刷プレビューで表示されるサブレポートです。
本来なら右の印刷プレビューの一番上のサブレポートにはデータが入っていますが、個人情報のため白く塗りつぶしています。
レコードがない場合、レイアウトビューではサブレポート自体も表示されますが印刷プレビューだとサブレポートが消えてしまうのです。

こちらの解消方法をお願いします。

【追記】
レコードがないときは同じフィールドをもった空欄のテーブルを参照するようなコードにしましたが正しくない参照が含まれるときは出ました。
レポートのレコードソース:台帳クエリ
サブレポート:異動レポート
サブレポートのレコードソース:異動クエリ
同じフィールドをもった空欄のレコード:異動空欄

Private Sub Report_Open(Cancel As Integer) If DCount("*", "異動クエリ") = 0 Then Me!異動レポート.Report.RecordSource = "異動空欄" Else Me!異動レポート.Report.RecordSource = "異動クエリ" End If End Sub

本来ならサブレポートがあと4つあるので同じコードを4回ほど書きますがとりあえずは1つのサブレポートで試しました。

アドバイス、訂正をお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

とりあえずサブレポートコントロールの「印刷時縮小」が「はい」になっていたら「いいえ」に変更。

「サブレポートの枠」というのか罫線のことで、レコード数に関係なく一定の行数の罫線を表示したいということなら、メインレポートの方に直線コントロールを行数分配置してサブレポートと重なるようにすればいいでしょう。

投稿2020/10/13 05:06

hatena19

総合スコア33775

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

bee96

2020/10/13 05:12

ありがとうございます。 罫線はひいていないのでいらないのですが、テーブルにレコードがなくてもレポートビューだときちんと表示されているので、そのまま印刷でも出力させたいのです・・・。 とりあえずはサブレポートコントロールを変更してみます。
hatena19

2020/10/13 05:20

プレビューではどうなりますか。 レポートビューとプレビュー/印刷出力は別物です。 プレビューで希望のレイアウトになるよう調整しましょう。
bee96

2020/10/13 05:31

プレビューではサブレポートが消えてしまいます。
hatena19

2020/10/13 05:44

サブレポートコントロールの「印刷時縮小」は「いいえ」になってますか。
bee96

2020/10/13 05:48

はい!すべていいえになっていました。
hatena19

2020/10/13 05:57

「サブレポートが消えてしまいます」とは、 サブレポート部分の高さが0になり下のものが詰めらるのか、 サブレポート部分の高さはあるが空白で表示されている、 のどちらでしょう。 できれば、デザインビューとプレビューのスクリーンショットを質問に追加して頂けると状況が分かりやすいです。
bee96

2020/10/13 06:18

>サブレポート部分の高さはあるが空白で表示されている こちらになります。 画像追加しましたので確認お願いします。
hatena19

2020/10/13 06:28

画像をみると「印刷時縮小」は「はい」になっているように見えます。 サブレポートコントロールについて勘違いしているのかも。 下記のリンク先でサブフォームコントロールについて説明してますので確認してみてください。 サブレポートでも同じですので。 サブフォームとサブフォームコントロールの違いとは? - hatena chips https://hatenachips.blog.fc2.com/blog-entry-347.html
bee96

2020/10/13 06:39

うーん、、 何回やってみてもサブレポートの印刷時縮小はいいえです・・・ それ以外にも色々触りましたがむしろ印刷時縮小が出てくるのはサブレポートに対して1つだけだったので間違うことはないと思うのですが・・・
hatena19

2020/10/13 06:40

今、サンプルを作成して確認してみたら、表示するレコードがないときプレビューでは表示されませんね。 そういう仕様のようです。 メインレポートの方にサブレポートを囲むにように直線コントロールが四角形コントロールを配置することになると思います。
bee96

2020/10/13 06:43

なるほど。 枠だけなら四角形コントロールなどでいいと思いますが、サブレポートのヘッダー部にあるラベルはもう表示できないのでしょうか。
hatena19

2020/10/13 07:13

ヘッダーのラベルも固定のものならメインレポートの方に配置すればどうでしょうか。 あるいは、サブレポートのレコードソースのテーブルに空欄のレコードを追加しておいて、表示するレコードがない場合は空欄のレコードを表示するようにするという方法も考えられます。
bee96

2020/10/13 23:31

ありがとうございます。 空欄のレコードを表示とは恐らくレコードソースの切り替えですよね? コードを書いたのですが正しくない参照が含まれるというエラーが出てきてしまいました。 アドバイスをお願いします。
hatena19

2020/10/14 00:11

メインレポートではサブレポートのレコードソースは変更できません。 サブレポートの空データ時イベントでできるかと思ったのですが、確認してみるとサブレポートの時はデータがないときは発生しないようです。 方法がないことはないのですがかなり難しいです。 メインレポートの方にラベルも枠も配置するという方法ではダメですか。
bee96

2020/10/14 00:18

やはりできないのですね・・・ 難しいと後々触ったときに分からなかったりするので避けたいですね(´;ω;`) サブレポートの下に四角形コントロールを置いてラベルも置いたのですがなぜか下のラベルと重なってしまうのです・・・
hatena19

2020/10/14 00:27

四角形コントロールの「背景スタイル」は「透明」になってますか。
bee96

2020/10/14 02:09

すべて透明にしましたが、なぜかラベルが重なるサブフォームとちゃんと表示されているサブフォームがあります・・・
hatena19

2020/10/14 02:13

コントロールの前後関係が関係しているかも。 表示されないラベルを右クリックして[位置]-[最前面へ移動]をクリックすると改善しませんか。
bee96

2020/10/14 02:18

最前面にしましたがダメです・・・ 表示されないというよりも、後ろに置いているラベルが透けて写っている感じです! サブフォームのヘッダーをもともと分かりやすいように青くしていたのですが、四角形コントロールだと見出しだけ青ができなかったのでヘッダーをすべて白にすると透けるようになりました・・・
hatena19

2020/10/14 02:23

見出し用の四角形コントロールを配置して背景色を青、ラベルを最前面でどうですか。 工夫次第でなんとかなると思いますのでいろいろトライしてみてください。
bee96

2020/10/14 02:26

白に近いけど微妙に白じゃない・・・みたいな色にしてとりあえずは乗り切ります(笑) 最後までお付き合いいただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問