Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 是否有一种基于值显示文本的方法?_Vba_Proficy - Fatal编程技术网

Vba 是否有一种基于值显示文本的方法?

Vba 是否有一种基于值显示文本的方法?,vba,proficy,Vba,Proficy,我使用的软件中有VBA,它有完整的VBA参考库,还有它自己的自定义内容 因此,我的问题与vba部分有关,它应该在我假设的任何地方都是相同的 我有5个变量,有人可以一次选择一个作为设定点,我也有一个反馈信号,显示每个变量是开还是关 在表单的显示中,我有一个文本行,我想显示选择的变量之一 那么,有没有一种方法可以编写一个代码,说明这个变量是否为真,并显示它 谢谢大家,在完成了我之前的回答后,我又回去看了一遍你们的问题,意识到我写的东西可能不是你们想要做的 正如Tim所说,如果反馈信号不用于任何其他用

我使用的软件中有VBA,它有完整的VBA参考库,还有它自己的自定义内容

因此,我的问题与vba部分有关,它应该在我假设的任何地方都是相同的

我有5个变量,有人可以一次选择一个作为设定点,我也有一个反馈信号,显示每个变量是开还是关

在表单的显示中,我有一个文本行,我想显示选择的变量之一

那么,有没有一种方法可以编写一个代码,说明这个变量是否为真,并显示它


谢谢大家,

在完成了我之前的回答后,我又回去看了一遍你们的问题,意识到我写的东西可能不是你们想要做的

正如Tim所说,如果反馈信号不用于任何其他用途,而不是为每个选项设置变量,则让选择设置文本

Private Sub Selection1CommandButton_OnClick()

  Userform1.textdisplaybox.caption = "option1"

End Sub
或者可以查看组合框、下拉选择菜单。那可能会把你想要的一切都集于一身

原来的答案如下

我有点不确定你在问什么,但我认为你希望之前选择的选项只有在有信号时才会显示在文本中。我不知道您将选择保存在哪里,现在我只想假设它是一个名为selectedOption的全局变量,其中option1、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

如果信号将自行打开和关闭,则可以添加一个计时器并将其放入超时。

基本上,变量的任何更新都将负责更新表单上的标签。鉴于你的问题中没有真正的细节,很难说得比这更具体。