问题
I created my first modeless UserForm
in Excel and put an ActiveX label on it. How do I set the caption of the label so that it displays whatever is in Sheet1.Range("A1")
, and updates itself when the value in cell A1 changes?
Basically, I want the Userform's
label to always be updated the second anything in the Excel cell changes. Thank you!
回答1:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Cells(1, 1), Target) Is Nothing Then
Exit Sub
End If
UserForm1.Label1.Caption = Sheet1.Range("A1").Value
End Sub
The sub Change
gets called everytime a cell changes. The code does this: if A1
was changed, change the caption of Label1
on UserForm1
. The form must have been opened not modal (vbModeless
).
UserForm1.Show vbModeless
回答2:
This Worked for me.
Sheets("Sheet").Shapes("TheNameOfTheLabel").TextFrame.Characters.Text = "Hello"
来源:https://stackoverflow.com/questions/6858747/in-an-excel-userform-how-do-i-update-a-labels-caption