5

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!

0m3r
  • 12,286
  • 15
  • 35
  • 71
MrPatterns
  • 4,184
  • 27
  • 65
  • 85

2 Answers2

5
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
Jacob
  • 41,721
  • 6
  • 79
  • 81
1

This Worked for me.

Sheets("Sheet").Shapes("TheNameOfTheLabel").TextFrame.Characters.Text = "Hello"
moberme
  • 669
  • 7
  • 13