「レイアウト」はフォーム及びレポートで利用できる機能で、複数のコントロールのグループ化の一種です。単に各コントロールが一緒に移動するだけでなく、位置や高さなどを自動的に調整してくれるので、変更を加えた場合にも体裁を維持しやすくなります。
レイアウトには「集合形式」と「表形式」があり、ここで紹介するのは「表形式」です。表形式では各コントロールが左右に並ぶため、フォームの場合は帳票フォームに用いるのに適しています。
設定
以下ではフォームを例として、基本的な設定と調整のための各種設定のうちの一部を紹介します。
レイアウトを適用すると個々のコントロールの設定がしにくくなる面もありますが、メニューを駆使することでかなり自由度の高い設定が可能になります。
基本操作
簡単なフォームのデザインビューです。
テキストボックスとラベルの組がいくつか置かれた状態になっています。
すべてのコントロールを選択した上で「配置」タブから「表形式」メニューを選択します。
するとテキストボックスは横一列になりました。
さらにフォームヘッダが出現し、ラベルがヘッダ上に横一列になりました。
さて、全体が薄い点線で囲まれているのが分かります。これはレイアウトが適用されていることを表しています。
また、ちょっと小さくて見づらいですが左上の部分に「田」の字のような小さい四角形が表示されているのが分かります。
全体を移動させるときは個々のコントロールではなく、この小さい四角形をドラッグする必要があります。
集合形式レイアウトの場合と違って左右にしか動かせないのが気になりますが……
適当なコントロールを選んで上下に移動させれば(画像では「会員番号」のラベル)他のコントロールの縦位置も一緒に変えることができます。
移動後の様子です。他のラベルも下に移動しています。
テキストボックス「会員番号」の幅を狭めている様子です。
その後に「住所」の幅を広げた後の様子です。他のテキストボックスやラベルの位置が自動的に調整されています。
レイアウトを適用していない場合にこういう微調整を正確に行うのは面倒ですが、適用することで大きく手間が省けます。
表形式レイアウトは各コントロールが横に並ぶため、フォームの場合は帳票フォームで利用するのに適しています。
フォームの「既定のビュー」プロパティを「帳票フォーム」とし、詳細セクションの高さを縮めました(さらにラベルを中央寄せにしています)。
その後にフォームビューで開いた様子です。
調整の例
列を挿入する
表形式を適用してからも自由なカスタマイズが可能です。一例として空白列を挿んでみます。
テキストボックス「会員番号」を選択した状態で、配置タブのメニューから「右に列を挿入」を選びます。
すると「会員番号」とそれ以外のコントロールの間に隙間が空きました。
これは単にスペースが空いたのではなく、「空白セル」という見えないコントロールが間に挿まれています。
各コントロールの間隔を変える
各コントロールの間を広げたり狭めたりすることもできます。
すべてのコントロールを選んだ状態で、配置タブから「スペースの調整」-「なし」を選択してみます。
すると各列の間にわずかに開いていたスペースが詰められ、隙のない配置になりました。
また、画像は省略しますが各コントロールの「上(下/左/右)スペース」プロパティの値を変更することで、個々のスペースを調整することもできます。
列を移動させる(入れ替える)
例として一番右の「生年月日」の行を選んでみます。
なお集合形式の場合と違って、テキストボックスとラベルの両方を選択しておかないとちょっとうまくいきませんので注意してください。
左にドラッグしていくと、ピンク色の線が現れます。
ここでドロップ(解放)すると……
列が入れ替わりました。
レポートでの利用
上記の例ではフォームを用いましたが、表形式レイアウトはレポートでも同様に利用できます。
印刷時拡張との併用
レポートで表形式レイアウトを適用した場合、印刷時拡張プロパティによりコントロールが高くなった(縦に拡張された)場合に、他のコントロールも一緒に高くなるという特典があります。他の方法で実現しようとするとかなり面倒ですのでぜひ覚えておいてください。
画像の例では「住所」列のみに印刷時拡張を適用していますが、2番目のレコードでわかるように他のテキストボックスの高さも一緒に高くなっています。
なお、次の記事ではさらに印刷時縮小と併用した例なども記載していますので、併せて覧ください。