1

次のレポートが表示されます。

F1    |    F2    |    F3    |
`````````````````````````````
TRUE  |   TRUE   |  FALSE   |
TRUE  |   FALSE  |  FALSE   |
FALSE |   N/A    |  N/A     |

ご覧のとおり、F1がtrueの場合にのみフィールドF2とF3を表示したいと思います。F1はfalseであり、F2とF3は、実際の値に関係なく「N/A」を表示する必要があります。

どうすればこれを行うことができますか?私はもう試した

Private Sub Detail_Format(Cancel As Integer, PrintCount As Integer)
If (Me.F1 = false) Then
    Me.F2.Visible = False
    Me.F3.Visible = False
End If
End Sub

しかし、これは値をテキストに変更しません(私が解決できたフィールドのみを削除します)が、すべてのフィールドの値も削除します。その行にあるものだけではありません。他にどのようにこれを達成できますか?

4

1 に答える 1

1

最も簡単な方法は、コントロールの名前を F2 から txtF2 に変更し、コントロール ソースを関数に設定することです。

=iif(F1=true,F2,"N/A")

可視性の設定に関しては、両側に配置する必要があります。

Private Sub Detail_Format(Cancel As Integer, PrintCount As Integer)

If (Me.F1 = false) Then
    Me.F2.Visible = False
    Me.F3.Visible = False
Else
    Me.F2.Visible = True
    Me.F3.Visible = True
End If
End Sub

またはもっと簡単に:

Private Sub Detail_Format(Cancel As Integer, PrintCount As Integer)
Me.F2.Visible = Me.F1
Me.F3.Visible = Me.F1
于 2012-07-13T16:12:08.597 に答える