Как обновить подпись ярлыка в пользовательской форме Excel? - PullRequest
5 голосов
/ 28 июля 2011

Я создал свой первый немодальный UserForm в Excel и наложил на него ярлык ActiveX. Как установить заголовок метки, чтобы он отображал все, что находится в Sheet1.Range("A1"), и обновлялся сам, когда значение в ячейке A1 изменяется?

По сути, я хочу, чтобы метка Userform's всегда обновлялась при изменении чего-либо в ячейке Excel. Спасибо!

Ответы [ 2 ]

5 голосов
/ 28 июля 2011
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

Sub Change вызывается каждый раз, когда изменяется ячейка. Код делает это: если A1 был изменен, измените заголовок Label1 на UserForm1. Форма должна быть открыта немодально (vbModeless).

UserForm1.Show vbModeless
1 голос
/ 16 декабря 2015

Это сработало для меня.

Sheets("Sheet").Shapes("TheNameOfTheLabel").TextFrame.Characters.Text = "Hello"
...