hiroton
2021/03/01 (月) 10:40:54
4b3d7@f966d
特別いい案は知りません
データ的な部分と表示的な部分を分けて考えます
■データ的な部分
2行になる条件のもと、クエリ上でフィールドを2つ(3つ)作ります。
複数行:(2行になる条件) //true または false になる
表示1:IIf([複数行],"",[所属])
表示2:IIf([複数行],(所属の2行表示の文字列),"")
[複数行]フィールドは計算に使うだけなので、各表示用フィールドに直接記述する場合は不要です。2行になる条件が複雑な場合は分けたほうが見やすいでしょう
■表示部分
1行用表示のテキストボックスと2行用表示のテキストボックスを重ねて設置します。それぞれのテキストボックスはそれぞれの表示に見合うよう調整します。前面に表示されるテキストボックスは背景色を「透明」にします
全てのレコードで表示1も表示2も常に表示する設定で、[複数行]の条件で片側は空白(非表示)にすることで望みの見た目になると思います
文字列が長い場合にのみ二段表示にしたい
あいまいな条件なので、複雑な条件で自動認識させたいとかなると途端に難しくなります。回答では、これについてはほぼ「できているモノ」としています。クエリでやるのが難しい場合はテキストボックスは一つで、VBAで上余白を調整するとかになると思います
通報 ...