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

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

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

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

Q&A

解決済

1回答

4110閲覧

Access レポートのレイアウト 境界線・枠線、サブレポートを利用 線に隙間が空く

mnbwqz

総合スコア74

Access

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

0グッド

0クリップ

投稿2021/11/14 03:42

編集2021/11/18 01:35

Access2013でレポートを作成しています。
罫線ありのエクセルの表のような形式でレポートを作成するため、
境界線を利用して線を引いていますがうまくいきません。

レポートの詳細セクションに、テキストボックスに加え
サブレポートも配置して、レイアウトを設定しています。
テキストボックス・サブレポートのプロパティは、
高さ・上位置・背景線スタイル(実線)・境界線幅(1ポイント)同一です。
しかし、サブレポートの部分のみ、一回り小さく線が引かれてしまいます。
他のテキストボックスと同じサイズで線を引く方法は無いでしょうか。
また、サブレポートが無い項目の場合、サブレポートが表示されていないのか、
線自体が引かれません。サブレポートが空でも、空として線だけ
表示させる方法は無いでしょうか。

また、全体として、境界線が上下の線が左右の線より太く、左右の線は重なっているのに比べ、上下の線は重なっていないように見えます。詳細セクションと、詳細セクションに配置したテキストボックス・サブフォームの高さは同じにしています。
上下の線も、左右の線と同じ太さにする方法は無いでしょうか。
よろしくお願いします。

レポート
(売り上げがない商品も表示する)

商品名項目1売上日金額項目2
A10/105,000
10/203,000
10/304,000
B11/52,000
11/103,000
C

クエリ1

商品名売上日金額
A10/105,000
A10/203,000
A10/304,000
B11/52,000
B11/103,000

クエリ1よりサブレポートを作成し、リンク親フィールドとリンク子フィールドの両者を商品名としてレポートに配置する

現状
現状

線を引きたい部分を黄色表示
希望

(追記)
ご回答ありがとうございます。
Access - Access2016:印刷時拡張で高さの拡がったテキストボックスに合わせて自動的に他のテキストボックスの高さも拡げたい|teratail
を参考にしてレポートを作成しています。
黄色の部分のみ、VBAで線を引くというのはできなそうでした。

改ページされる時点をVBAで認識する方法は
こちらを参考にして認識し、各ページ最終行の一番下の罫線を引けました。

(以下詳細)

縦罫線をVBAで、横罫線を詳細セクションに配置という方法では自動でレイアウトが変更され(詳細セクションの幅が自動的に+0.026cmされる)、想定通りにならないところがありました。

データの中にはセル(テキストボックス)の背景に色を付けるものがあり(テキストボックスの背景色の設定で色を付ける方法では、VBAで引いた線の部分にまで背景色がはみ出だす大きさになる)、全ての枠線をVBAの四角形を描画する方法で作成する方法も試しています。サブレポートでの各商品のデータ件数の量に応じ、縦罫線を伸ばさないといけない点・下罫線が移動する点、については、サブレポートの件数に応じて縦罫線を伸ばす・下罫線を移動させる方法で対応できたので、データの最後の部分の下の線は引けました。

改ページする場合に、改ページをVBAで認識する方法も「こちら」ページの情報を参考に線を引くことが出来ました。

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

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

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

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

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

guest

回答1

0

ベストアンサー

テキストボックス、サブレポートの境界線は透明にしておいて、横罫線はメインレポート上に直線コントロールを配置する、縦罫線は以前、回答したVBAで描画する方法を使用するということでどうでしょう。

投稿2021/11/14 04:11

編集2021/11/14 04:14
hatena19

総合スコア33795

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

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

mnbwqz

2021/11/18 01:36

ご解答の通り、VBAを利用して線を引けました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問