Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Set Userform label text if form is not loaded???
My userform contains various text label controls which display
the contents of a row of cells. I achieve this with the following code: Private Sub Worksheet_Change (ByVal Target As Range) UserForm1.Label1.Caption = Sheet1.Range("A1").Value UserForm1.Label2.Caption = Sheet1.Range("B1").Value UserForm1.Label3.Caption = Sheet1.Range("C1").Value ' .... ' etc, etc... End Sub I was wondering, is it wise to run the above code even when my userform is not loaded??? The code above seems to work fine even when my form is NOT loaded, but I'm worried that trying to set the text of a label that doesn't exist will cause bugs later on. thank you |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Set Userform label text if form is not loaded???
The reason you are not having any problems with your code is because as soon
as you reference a property or method of a UserForm, VB loads that UserForm into memory (it doesn't show it... it just loads it). If you were to show your UserForm after doing something to make the Change event fire, I am pretty sure the UserForm will display with the Label control captions already filled in. -- Rick (MVP - Excel) "Robert Crandal" wrote in message ... My userform contains various text label controls which display the contents of a row of cells. I achieve this with the following code: Private Sub Worksheet_Change (ByVal Target As Range) UserForm1.Label1.Caption = Sheet1.Range("A1").Value UserForm1.Label2.Caption = Sheet1.Range("B1").Value UserForm1.Label3.Caption = Sheet1.Range("C1").Value ' .... ' etc, etc... End Sub I was wondering, is it wise to run the above code even when my userform is not loaded??? The code above seems to work fine even when my form is NOT loaded, but I'm worried that trying to set the text of a label that doesn't exist will cause bugs later on. thank you |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Set Userform label text if form is not loaded???
As soon as you reference your userform the userform will then be loaded into
memory. It may or may not be a bad thing. I guess it depends on the size (how much memory the form takes up) of the userform and how strong your computer is (how much memory it has available). If your not really needing your userform when your worksheet is changed, I would just put the code you posted in the userforms Intialize Event. This way when your userform is shown it will have all your controls set the way you want it. Private Sub UserForm_Initialize() Me.Label1.Caption = Sheet1.Range("A1").Value Me.Label2.Caption = Sheet1.Range("B1").Value Me.Label3.Caption = Sheet1.Range("C1").Value ' .... ' etc, etc... End Sub -- Cheers, Ryan "Rick Rothstein" wrote: The reason you are not having any problems with your code is because as soon as you reference a property or method of a UserForm, VB loads that UserForm into memory (it doesn't show it... it just loads it). If you were to show your UserForm after doing something to make the Change event fire, I am pretty sure the UserForm will display with the Label control captions already filled in. -- Rick (MVP - Excel) "Robert Crandal" wrote in message ... My userform contains various text label controls which display the contents of a row of cells. I achieve this with the following code: Private Sub Worksheet_Change (ByVal Target As Range) UserForm1.Label1.Caption = Sheet1.Range("A1").Value UserForm1.Label2.Caption = Sheet1.Range("B1").Value UserForm1.Label3.Caption = Sheet1.Range("C1").Value ' .... ' etc, etc... End Sub I was wondering, is it wise to run the above code even when my userform is not loaded??? The code above seems to work fine even when my form is NOT loaded, but I'm worried that trying to set the text of a label that doesn't exist will cause bugs later on. thank you . |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Set Userform label text if form is not loaded???
As soon as you reference your userform the userform will then be loaded into
memory. It may or may not be a bad thing. I guess it depends on the size (how much memory the form takes up) of the userform and how strong your computer is (how much memory it has available). If your not really needing your userform when your worksheet is changed, I would just put the code you posted in the userforms Intialize Event. This way when your userform is shown it will have all your controls set the way you want it. Private Sub UserForm_Initialize() Me.Label1.Caption = Sheet1.Range("A1").Value Me.Label2.Caption = Sheet1.Range("B1").Value Me.Label3.Caption = Sheet1.Range("C1").Value ' .... ' etc, etc... End Sub -- Cheers, Ryan "Robert Crandal" wrote: My userform contains various text label controls which display the contents of a row of cells. I achieve this with the following code: Private Sub Worksheet_Change (ByVal Target As Range) UserForm1.Label1.Caption = Sheet1.Range("A1").Value UserForm1.Label2.Caption = Sheet1.Range("B1").Value UserForm1.Label3.Caption = Sheet1.Range("C1").Value ' .... ' etc, etc... End Sub I was wondering, is it wise to run the above code even when my userform is not loaded??? The code above seems to work fine even when my form is NOT loaded, but I'm worried that trying to set the text of a label that doesn't exist will cause bugs later on. thank you . |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Changing the text of a label on a Userform | Excel Programming | |||
Multiple fonts in a VBA UserForm label (to make XL 95 form non-modal) | Excel Programming | |||
Userform - Formating Text in a Label | Excel Programming | |||
Help! Animated gif-image in form does not show animation when form loaded | Excel Programming | |||
Label, Text and Form controls in Excel 97 | Excel Programming |