Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
908to912
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
908to912
908to912
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Einfach If Anweisung?

Einfach If Anweisung?
27.09.2007 16:31:00
Patrick
Hallo zusammen,
folgendes Problem, in meinem Userform habe ich 3 Textboxen A,B und C, diese sind deaktiviert und Grau hinterlegt. Zudem habe ich zwei Checkboxen A&B und B&C (siehe Bild)
Mein Ziel ist es wenn ich eine Checkbox anklicke sollen die jeweiligen Textboxen aktiviert und Weiss hinterlegt werden.
Beim abwählen einer checkbox soll nur die jeweilige unbenutze Textbox deaktiviert werden, da die andere noch aktiviert bleiben soll, wird noch gebraucht.
img src="https://www.herber.de/bbs/user/46393.jpg" border=0>
Hier ist mal mein nicht funktionierender Code:

Private Sub CheckBox1_Click()
TextBox1.Enabled = True
TextBox2.Enabled = True
TextBox1.BackColor = &H80000009
TextBox2.BackColor = &H80000009
If CheckBox1 = False & CheckBox2 = True Then
TextBox1.Enabled = False
TextBox1.BackColor = &H8000000F
Else
TextBox1.Enabled = False
TextBox1.BackColor = &H8000000F
TextBox2.Enabled = False
TextBox2.BackColor = &H8000000F
End If
End Sub



Private Sub CheckBox2_Click()
TextBox2.Enabled = True
TextBox2.BackColor = &H80000009
TextBox3.Enabled = True
TextBox3.BackColor = &H80000009
If CheckBox2 = False & CheckBox1 = True Then
TextBox3.Enabled = False
TextBox3.BackColor = &H8000000F
Else
TextBox2.Enabled = False
TextBox2.BackColor = &H8000000F
TextBox3.Enabled = False
TextBox3.BackColor = &H8000000F
End If
End Sub


Vielen dank für eure Hilfe
Patrick

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Einfach If Anweisung?
27.09.2007 16:32:58
Patrick
Hier das funktionierende Bild
Userbild

AW: Einfach If Anweisung?
27.09.2007 16:36:27
Renee
Hi Patrick,
soll nur die jeweilige unbenutze Textbox deaktiviert werden
kannst Du noch 'code-mässig' definieren, wann eine Textbox benutzt ist, bzw. welche Eigenschaften eine Textbox als benutzt ausweisen ?
GreetZ Renee

AW: Einfach If Anweisung?
27.09.2007 16:41:50
Patrick
Hallo Renee
so sind sie def.:
Textbox1 entspricht A
Textbox2 entspricht B
Textbox3 entspricht C
Sie sind Standartmäßig .enabled=false und Grau hinterlegt
Checkbox1 entspricht A&B
Checkbox2 entspricht B&C
Wenn eine Textbox aktiviert werden soll muss gelten, .enabled=true und weiss hinterlegt

Anzeige
AW: Einfach If Anweisung?
27.09.2007 16:47:00
Renee
Hi Patrick,
Das ist und war mir alles klar.
Was mir nicht klar ist, ist deine Aussage: Beim abwählen einer checkbox soll nur die jeweilige unbenutze Textbox deaktiviert werden, da die andere noch aktiviert bleiben soll, wird noch gebraucht.
Also ich klicke A&B folglich sind Textbox1 und Textbox2 enabled.
Ich klick wieder A&B was soll jetzt noch enabled sein ?
GreetZ Renee

AW: Einfach If Anweisung?
27.09.2007 16:56:05
Patrick
sorry, kleines Mißverständniss
Also A&B anklicken Textbox 1&2 enabled=true , wieder A&B anklicken und Textbox1&2 enabled= false.
Genause mit B&C anklicken Textbox 2&3 enabled=true, wieder B&C anklicken und Textbox 2&3 enabled=false
Nur Problem im Fall A&B und B&C sind angeklickt und jetzt wähle ich A&B ab, dann soll nur Textbox 1 enabled=false gehen, weil Textbox2 noch gebraucht wird ( B&C ist weiterhin angewählt)
patrick

Anzeige
AW: Einfach If Anweisung?
27.09.2007 17:10:56
Renee
Hi Patrick,
Wäre es nicht einfacher so, statt das Gefrickel mit den Farben:

Private Sub CheckBox1_Click()
TextBox1.Visible = CheckBox1
TextBox2.Visible = CheckBox1 Or CheckBox2
End Sub
Private Sub CheckBox2_Click()
TextBox3.Visible = CheckBox2
TextBox2.Visible = CheckBox2 Or CheckBox1
End Sub


Nach der gleichen Logik kannst Du auch Deine Enable und Farben machen.
Ist mir aber zu fuzzelig...
GreetZ Renee

AW: Einfach If Anweisung?
27.09.2007 19:32:26
Patrick
Danke,
die Logik mit dem oder gefällt mir auch viel besser :)
Patrick

AW: Einfach If Anweisung?
27.09.2007 17:25:00
Rudi
Hallo,

Private Sub CheckBox1_Click()
Textboxes
End Sub
Private Sub CheckBox2_Click()
Textboxes
End Sub
Private Sub UserForm_Initialize()
Textboxes
End Sub
Private Sub Textboxes()
TextBox1.Enabled = CheckBox1
TextBox1.BackColor = RGB(255, 255, 255) + RGB(50, 50, 50) * Not CheckBox1
TextBox2.Enabled = CheckBox1 Or CheckBox2
TextBox2.BackColor = RGB(255, 255, 255) + RGB(50, 50, 50) * Not (CheckBox1 Or CheckBox2)
TextBox3.Enabled = CheckBox2
TextBox3.BackColor = RGB(255, 255, 255) + RGB(50, 50, 50) * Not CheckBox2
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige