我有具有组合框的用户窗体。组合框的选择范围是工作簿,此VBA将输入的拾取结果传递到单元格C79:
Private Sub ComboBox1_Change()
ThisWorkbook.Worksheets("Other Data").Range("C79").Value = Me.ComboBox1.Value
End Sub
问题是,当我第二次打开用户窗体时,在组合框中看不到提取结果,因此我必须再次提取它。如何将单元格C79链接到Private Sub UserForm_Initialize()
,以便当我打开UserForm时,来自C79的值将在Combobox1中可见?
我尝试过:
Private Sub UserForm_Initialize()
ComboBox1.List = ThisWorkbook.Sheets("Other Data").Range("A79:A81").Value ' This one picks the range
'ThisWorkbook.Sheets("Other Data").Range("C79").Value = ReviewForm.ComboBox1.Value
End Sub
答案 0 :(得分:3)
要在用户窗体中填充ComboBox控件,请使用以下
Private Sub UserForm_Initialize()
Me.ComboBox1.Value = ThisWorkbook.Sheets("Other Data").Range("C97").Value
End Sub
或者,您可以在每次激活UF时更新此值:
Private Sub UserForm_Activate()
Me.ComboBox1.Value = ThisWorkbook.Sheets("Other Data").Range("C97").Value
End Sub
或者,每次单元格值更改时,您都可以更新UF的组合框。但是,这不合逻辑,因为您使用UF更新了单元。它会激活自己。