一切!我将尽力详细描述我的困境。我在Visual Basic中有一些背景知识,但在Outlook 2010中没有真正的VBA或VBscript。 我正在使用Outlook 2010.我创建了一个自定义表单(这是我第一次)。我有一个名为ComboBox1的组合框和一个名为TextBox1的文本框。我试图根据ComboBox1的选择自动填充TextBox1(例如,我从ComboBox1中选择值1,使用124填充TextBox1)。 我尝试在Visual Basic编辑器(VBA版本7.0)中使用此代码:
Sub popBox()
If ComboBox1 = "Value 1" Then
TextBox1 = "124"
End If
End Sub
我的问题是我做错了什么?我应该使用VBscript编辑器,还是使用VBA做正确的事情? 我甚至可能要问什么?提前谢谢大家!
答案 0 :(得分:2)
今天早上很棒!我发现了解决问题的方法。如果将来有人遇到这个问题,我想出的就是:
Sub Item_CustomPropertyChange(ByVal Aircraft)
Set myInspector = Item.GetInspector
Set FormPage = myInspector.ModifiedFormPages("Form")
Set Aircraft = FormPage.Controls("Aircraft")
Set PartNumber = FormPage.Controls("PartNumber")
Select Case Aircraft.Value
Case "Value 1"
PartNumber.Value = "124"
Case "Value 2"
PartNumber.Value = "125"
End Select
End Sub
答案 1 :(得分:1)
右键单击表单并选择“查看代码”。现在,您应该可以从代码编辑器的文本输入部分上方的下拉菜单 中进行选择。选择“ComboBox1”,然后从相邻的下拉菜单中选择“更改”。
编辑器应为您创建一个名为“Private Sub ComboBox1_Change()”的例程。输入以下内容:
Private Sub ComboBox1_Change()
Select Case ComboBox1.Value
Case "Value 1"
TextBox1.Caption = "124"
Case Else
TextBox1.Caption = ""
End Select
End Sub
您还可以在表单的代码中粘贴上面的代码(只要您的组合框被称为“ComboBox1”和您的文本框“TextBox1”),并获得相同的结果。让我知道你是怎么走的。