Microsoft Access 掲示板

レコードごとにVisibleを設定

4 コメント
views
4 フォロー

よろしくお願いいたします。

帳票フォームにて、レコードごとに、条件によってコントロールのVisibleを設定したいのですが。

例えば、テキストボックスAの値が1なら、コントロールBのVisibleをTrueにし、
それ以外はVisibleをFalseにする。

条件付き書式のVisible版を行いたいと思っています。
おそらく出来ないと自分では思っていますが。

あん
作成: 2024/04/23 (火) 15:34:04
通報 ...
1
hiroton 2024/04/23 (火) 15:56:40 b3ded@f966d

基本的にはできないですね

コントロールBの前面にテキストボックスを配置して、背景スタイルプロパティを「透明」に、コントロールソース=IIf([テキストボックスA]<>1,"███")としてコントロールBを隠すとか、そんなことならできます

前景色プロパティで、メインの背景と同じ色になるようにして、フォントの設定でうまく塗りつぶすようにします。境界線や立体表示、余白の設定なんかも調整する必要があります

コントロールによってはテキストボックスよりも前面に表示されるモノ(前後の優先順位が固定のコントロール)もあるので、それらに関しては打つ手なしだと思います

2
あん 2024/04/23 (火) 16:31:37 b41ab@001b1

hiroton様
ご回答ありがとうございます。

そのやり方をやってみます。
見栄えや使いやすさなどをよく判断してみます。

3
hatena 2024/04/23 (火) 17:24:16 修正

hirotonさんの回答と同じ考え方のものですが、下記にサンプルがあります。
ご参考に。

帳票フォームでレコード毎にテキストボックスの表示/非表示を切り換えたい
表形式フォームで FieldA のデータが英字のみの場合、FieldBを表示、それ以外は非表示にしたいのですが、VisibleをTrueやFalseにすると、表全部がなってしまい、行単位で表示、非表示ができません。 Accessの帳票フォームで「可視」プロパティをVBA等で変更した場合は、すべての行に反映されます。プロパティがレコード数分存在するわけではないのでしょうがないことです。 「条件付き書式」を使って使用不可にすれば、...
Fc2

4
あん 2024/04/24 (水) 10:52:24 b41ab@001b1

hatena様
ありがとうございます。
こちらもやってみます!