< návrat zpět

MS Excel


Téma: Funkcie pre „controls.Add“ vo Formulári rss

Zaslal/a 22.2.2014 17:55

Dobrý deň všetkým,
mám problém s „doplnkovými funkciami“ pri objektoch (TextBox) ktoré som vytvoril cez: controls.Add("Forms.TextBox.1").

potrebujem zmeniť farbu pozadia ak sa zmení hodnota v objekte.
Neviem čo mám zadať za Private Sub ????_Change() aby to fungovalo.
Dúfam, že existuje riešenie, inač všetko čo som do teraz vytvoril môžem ...
v prílohe je príklad. (TextBox2 = je moja predstava)
Už začínam byť zúfali. 6

Vopred ďakujem za všetko čo ma posunie ďalej.
Martin

Příloha: zip17946_pokus.zip (15kB, staženo 20x)
stop Uzamčeno - nelze přidávat nové příspěvky.

#017952
avatar
Vlož "Class module"

Option Explicit
Public WithEvents TxtBox As MSForms.TextBox
Public BackColor As Long

Private Sub Class_Initialize()
BackColor = RGB(255, 255, 255)
End Sub

Private Sub Class_Terminate()
Set TxtBox = Nothing
End Sub

Private Sub TxtBox_Change()
TxtBox.BackColor = BackColor
End Sub


Pojmenuj ho třeba clsTextBox.

Kód v UserForm1 oprav:


Dim TB As New clsTextBox ' Kontejner s dynamickým TextBoxem

Private Sub UserForm_Activate()

Set TB = New clsTextBox
Set TB.TxtBox = Me.Controls.Add("Forms.TextBox.1")

With TB.TxtBox
.Name = "TextBox1"
.Top = 10
.Left = 10
.Width = 200
.Height = 14
.Value = "Text"
.Font.Size = 8
End With

TB.BackColor = RGB(20, 20, 20)
End Sub

Private Sub TextBox2_Change()
TextBox2.BackColor = RGB(105, 125, 205)
End Sub
citovat
#018071
avatar
Super ďakujem.citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje