Excel Userform:初始化,直到文本框中的值发生更改
我有带文本框的UserForm。那么“其他数据”中就有价值了!C6,在单元格C6中,其他数据为公式=D6 然后,通过这个,我将值传递给单元格:Excel Userform:初始化,直到文本框中的值发生更改,excel,vba,userform,Excel,Vba,Userform,我有带文本框的UserForm。那么“其他数据”中就有价值了!C6,在单元格C6中,其他数据为公式=D6 然后,通过这个,我将值传递给单元格: Private Sub TextBox3_Change() ThisWorkbook.Worksheets("Other Data").Range("C6").Value = Me.TextBox3.Text End Sub 从单元格中获取值: Private Sub UserForm_Initialize() Me.TextBox3.Text = T
Private Sub TextBox3_Change()
ThisWorkbook.Worksheets("Other Data").Range("C6").Value = Me.TextBox3.Text
End Sub
从单元格中获取值:
Private Sub UserForm_Initialize()
Me.TextBox3.Text = ThisWorkbook.Worksheets("Other Data").Range("C6").Value
End Sub
Private Sub UserForm_Activate()
Me.TextBox3.Text = ThisWorkbook.Worksheets("Other Data").Range("C6").Value
End Sub
Private Sub UserForm_Click()
Me.TextBox3.Text = ThisWorkbook.Worksheets("Other Data").Range("C6").Value
End Sub
问题是UserForm中的数字覆盖了“其他数据”中的公式!C6打开用户窗体时。这会影响我的Excel应用程序中的其他公式和计算。如何防止“其他数据”!C6重写,直到我手动更改UserForm上文本框中的值为止 每次更改文本框中的值时,都会触发更改事件并重写C6。诀窍是在进行更改时关闭EnableEvents,从而停止初始化和其他事件中的触发
Private Sub UserForm_Initialize()
application.EnableEvents = false
Me.TextBox3.Text = ThisWorkbook.Worksheets("Other Data").Range("C6").Value
application.EnableEvents = true
End Sub