我使用的软件中包含VBA,它具有完整的vba参考库以及自己的自定义内容。
所以我的问题与vba部分有关,在我假设的所有地方都应该相同。
我有5个变量可供某人选择(一次一个)作为设定点,我还为每个变量提供了一个反馈信号,以显示其打开或关闭。
在窗体的显示中,我有一条文本行,无论选择哪个变量,我都要显示该行。
那么有没有一种方法可以写一个代码“如果此变量为true,则显示它”?
谢谢你们,
答案 0 :(得分:0)
完成先前的回答后,我又读了一次您的问题,然后才意识到我写的可能不是您想做的。
就像蒂姆说的那样,如果反馈信号不用于其他任何事情,而不是为每个选项设置变量,则让选择项设置文本。
Private Sub Selection1CommandButton_OnClick()
Userform1.textdisplaybox.caption = "option1"
End Sub
或者检查组合框,即下拉选择菜单。这样一来,您就可以找到所有想要的东西。
原始答案如下。
我不确定您要问什么,但是我想您希望以前选择的选项仅在有信号时才显示在文本中。我不知道您将选择保留在哪里,现在我只是假设它是一个名为selectedOption,选择了option2等的全局变量。
您可能正在尝试以下操作:
Private sub
'If both the selected option is the first and the feedback signal
'is true, then set the display to that option
If selectedOption = option1 and variableSignal1 = True Then
Userform1.textdisplaybox.caption = option1
'Option is the second and signal is true
ElseIf selectedOption = option2 and variableSignal2 = True Then
Userform1.textdisplaybox.caption = option2
'However many else ifs you need, then if the signal is not true,
'blank the textbox
Else
Userform1.textdisplaybox.caption = ""
Endif
End sub
如果信号要自行打开和关闭,则可以添加一个计时器并将其设置为超时。