mehrere Textboxen einblenden
Betrifft: mehrere Textboxen einblenden
von: Ludicla
Geschrieben am: 25.08.2014 14:49:43
Hallo Profis,
ich komm wieder mal nicht weiter.
wie kann ich mehrere Textboxen auf einmal auf Visible gleich true stellen.
z. B. Eingabe 5
dann sollen die Textboxen 1 bis 5 eingeblendet werden.
bei Eingabe 3 nur die Textbox 1 - 3
Gruss Ludicla
Betrifft: AW: mehrere Textboxen einblenden
von: Ewald
Geschrieben am: 25.08.2014 15:01:47
Hallo Ludicla,
teste mal
Sub Einblenden()
Dim i As Long
Dim x As Long
x = 5
On Error GoTo Fehler
For i = 1 To x
ActiveSheet.OLEObjects("TextBox" & i).Visible = True
Next
Fehler:
MsgBox "Es sind nur " & i - 1 & " Textboxen vorhanden"
End Sub
Sub Ausblenden()
Dim i As Long
Dim x As Long
x = 5
On Error GoTo Fehler
For i = 1 To x
ActiveSheet.OLEObjects("TextBox" & i).Visible = False
Next
Fehler:
MsgBox "Es sind nur " & i - 1 & " Textboxen vorhanden"
End Sub
Gruß Ewald
Betrifft: AW: mehrere Textboxen einblenden
von: Ludicla
Geschrieben am: 25.08.2014 15:04:55
Hallo Ewald,
wird mich mal gleich drüberstürzen.
Dankeschön.
Betrifft: pack noch ein Exit Sub mit rein
von: Matthias L
Geschrieben am: 25.08.2014 15:30:54
Hallo
Ich würde hier vor die Zeile Fehler:
noch ein Exit Sub setzen (in beiden Sub's)
Sonst bekommst Du immer eine Meldung
Gruß Matthias
Betrifft: AW: mehrere Textboxen einblenden
von: Adis
Geschrieben am: 25.08.2014 18:01:47
Hallo
mir ist für dieses Problem eine alte Schreibweise aus Excel7 Zeit bekannt.
Dort konnte man mehrere Objekte in ein Array zusammenfassen.
Anbei eine kleines Beispiel aus meiner Datei mit drei Kontroll Boxen. Hier nannte man Objekte DrawingObject.
Probier mal ob das Array auch auf OLEObjekte anwendbar ist. Würde mich freuen wenn es klappt.
ActiveSheet.DrawingObjects(Array("Check Box 1", "Check Box 2", "Check Box 3")).Visible = False
ActiveSheet.OLEObjects(Array("TextBox1", "TextBox2", "TextBox3")).Visible = False
Gruss Adis
Betrifft: AW: mehrere Textboxen einblenden
von: Ewald
Geschrieben am: 26.08.2014 00:39:13
Hallo,
dann verbessern wir noch etwas mehr
Sub Einblenden()
Dim i As Long
Dim x As Long
Dim y As Long
For i = 1 To ActiveSheet.OLEObjects.Count
If ActiveSheet.OLEObjects(i).Name = "TextBox" & i Then
y = y + 1
End If
Next
x = Application.InputBox("Geben Sie eine Zahl von 1 bis " & y & " ein")
If x > y Or x = 0 Then
MsgBox "sie haben sich nicht an die Vorgabe gehalten,oder abgebrochen,es werden keine _
Textboxen eingeblendet"
Exit Sub
Else
For i = 1 To x
ActiveSheet.OLEObjects("TextBox" & i).Visible = True
Next
End If
End Sub
Sub Ausblenden()
Dim i As Long
Dim y As Long
For i = 1 To ActiveSheet.OLEObjects.Count
If ActiveSheet.OLEObjects(i).Name = "TextBox" & i Then
y = y + 1
End If
Next
For i = 1 To y
ActiveSheet.OLEObjects("TextBox" & i).Visible = False
Next
End Sub
Gruß Ewald
Betrifft: AW: mehrere Textboxen einblenden
von: Ludicla
Geschrieben am: 26.08.2014 09:07:52
Dank für eure Hilfe,
aber ich hab gestern vergessen dass ich eine Userform benutze und die Eingabe
in einer Combobox vornehme. Bei dem Eintrag in die Combobox soll er die gleiche Anzahl
von TextBoxen einblenden.
bis jetzt habe ich: bei Eingabe 1: Textbox1.visible = true
bei Eingabe 2: Textbox1.visible = True
Textbox2.visible = True
bei Eingabe 3: Textbox1.visible = true
Textbox2.visible = true
Textbox3.visible = true
usw. ist etwas mühselig.
Gruss Ludicla
Betrifft: AW: mehrere Textboxen einblenden
von: Ewald
Geschrieben am: 26.08.2014 11:06:21
Hallo,
dann so, Userform.Name anpassen
Private Sub ComboBox1_Change()
Dim i As Long
Dim x As Long
Dim y As Long
Dim c As Control
For Each c In UserForm3.Controls
If LCase(TypeName(c)) = "textbox" Then
y = y + 1
End If
Next
If ComboBox1.Value = "" Then
For i = 1 To y
UserForm3.Controls("TextBox" & i).Visible = False
Next
Else
x = CDbl(ComboBox1.Value)
If x > y Or x = 0 Then
MsgBox " Es gibt keine " & x & " Textboxen"
Exit Sub
Else
For i = 1 To x
UserForm3.Controls("TextBox" & i).Visible = True
Next
End If
End If
End Sub
Gruß Ewald
Betrifft: AW: mehrere Textboxen einblenden
von: Ludicla
Geschrieben am: 26.08.2014 12:12:14
Danke Ewald
das wars. Nun flutscht es genauso wie gewünscht.
Gruss Ludicla
Beiträge aus den Excel-Beispielen zum Thema "mehrere Textboxen einblenden"