因此,我需要帮助来完成对元素周期表中元素的应用程序查找。是否让用户在具有下拉列表的Userform1的组合框中输入元素的想法。然后,根据所选择的元素,将其定向到具有文本框的Userform2,并在该文本框中为每个元素指定原子质量。我需要一个示例,说明如何以及在何处fromusers中编写代码。这是我到目前为止所拥有的。
UserForm1的名称为Element_LookUp
Userform2名称为Element_LookUp_Result
Userform1:
Private Sub CommandButton1_Click()
Unload Me 'Closes The Screen after the click
Element_LookUp_Result.Show 'Shows The result scrren in a new pop up
End Sub
Private Sub UserForm_Initialize()
' All 118 Elements will be shown on a drop down list
' The elements are in order ; autofill helps input the element.
ComboBox1.AddItem "Hydrogen"
ComboBox1.AddItem "Helium"
ComboBox1.AddItem "Lithium"
ComboBox1.AddItem "Beryllium"
ComboBox1.AddItem "Boron"
ComboBox1.AddItem "Carbon"
End Sub ' Not all the elements are listed below i just wanted to save time
UserForm 2:
Private Sub UserForm_Terminate()
Unload Me 'Once the (X) is clicked the result screen goes away
Element_Lookup.Show 'Result scrren goes back to the input screen again
End Sub
答案 0 :(得分:-1)
当您要维护来自不同用户窗体/模块等的数据时,我相信您正在寻找一个全局变量...在用户窗体模块的顶部(出于本帖子的目的,假设UF1是userform1,UF2是userform2),则将放置(不在子例程中):
Public ElementName as String
现在,在您的命令按钮中1_click:
ElementName = Combobox1.Value
在UF2初始化子例程中,您将输入以下内容:
Textbox1.value = UF1.ElementName
上面的示例是如何仅传递变量。您也可以使用ElementName,例如:
Textbox1.Value = Application.Index(OutputRange,Application.Match(UF1.ElementName,LookupRange,0))
有了该索引/匹配项,您就可以使用ElementName查找要用于原子质量的列的输出。