Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA: Gleiches Ereignis für mehrere UF-Textboxen

Forumthread: VBA: Gleiches Ereignis für mehrere UF-Textboxen

VBA: Gleiches Ereignis für mehrere UF-Textboxen
23.02.2004 11:39:43
Lupus
Hallo Excel-User,
gestern hatte Nepumuk auf „Automatisch zur nächsten Zelle springen (ohne Tab)“ wieder mal eine tolle Lösung angeboten.
Nun hat man ja in einer UF mehrere Textboxen; wie ist es nun möglich, gezielt in mehreren aber nicht allen Textboxen das gleiche Ereignis auszuführen.
Als Beispieldatei habe ich die von Nepumuk verwendet, jedoch 3 weiter Textboxen hinzugefügt und das Change-Ereignis der Textboxen gelöscht. Nun soll das Ereignis nur für TB-1, TB-3 und TB-5 gelten.
Den Code habe ich folgender maßen verändert:

Private Sub UserForm_Activate()
Dim intIndex As Integer
For intIndex = 1 To 6
Select Case intIndex
Case 1, 3, 5
Set TextBoxen(intIndex).myTextBox = Controls("TextBox" & CStr(intIndex))
End Select
Next
End Sub

Wird der intIndex in der Schleife auf 5 gesetzt, kommt es zu einer Fehlermeldung. Laufzeitfehler. Index außerhalb des gültigen Bereichs.
Wie müsste der Code richtig lauten?
Hier die dazugehörige Datei: https://www.herber.de/bbs/user/3884.xls
Gruß Lupus
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: Gleiches Ereignis für mehrere UF-Textboxen
23.02.2004 11:53:32
Hajo_Zi
Hallo Lupus
https://www.herber.de/bbs/user/3885.xls
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Pro und Excel Version XP Pro


Anzeige
AW: Danke für die schnelle Lösung, o. T.
23.02.2004 12:05:38
Lupus
.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Gleiches Ereignis für mehrere Textboxen in Excel VBA


Schritt-für-Schritt-Anleitung

Um ein gleiches Ereignis für mehrere Textboxen in einem UserForm in Excel VBA auszuführen, folge diesen Schritten:

  1. UserForm Öffnen: Gehe in die Entwicklertools und öffne den Visual Basic-Editor. Wähle das UserForm aus, in dem sich die Textboxen befinden.

  2. Textboxen Hinzufügen: Stelle sicher, dass die Textboxen, die du verwenden möchtest (zum Beispiel TB-1, TB-3 und TB-5), bereits im UserForm vorhanden sind.

  3. Code Einfügen: Füge den folgenden VBA-Code in die Code-Ansicht des UserForms ein:

    Private Sub UserForm_Activate()
       Dim intIndex As Integer
       For intIndex = 1 To 6
           Select Case intIndex
           Case 1, 3, 5
               Set TextBoxen(intIndex).myTextBox = Controls("TextBox" & CStr(intIndex))
           End Select
       Next
    End Sub
  4. Ereignis Definieren: Definiere das gewünschte Ereignis für die Textboxen, zum Beispiel das Change-Ereignis.

  5. Fehlerüberprüfung: Achte darauf, dass du die Indizes der Textboxen korrekt definierst, um Laufzeitfehler zu vermeiden.


Häufige Fehler und Lösungen

  • Laufzeitfehler: Index außerhalb des gültigen Bereichs: Dieser Fehler tritt auf, wenn du versuchst, auf eine Textbox zuzugreifen, die nicht existiert. Stelle sicher, dass die Anzahl der Textboxen im Code mit der tatsächlichen Anzahl im UserForm übereinstimmt.

  • Fehlende Textboxen: Wenn du Textboxen hinzufügst oder entfernst, passe den Code entsprechend an, um sicherzustellen, dass die Indizes korrekt sind.


Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch:

  • Excel-Formeln verwenden, um die Werte in den Textboxen zu verarbeiten.
  • Datenüberprüfung in den Textboxen aktivieren, um Eingabefehler direkt beim Tippen anzuzeigen.

Praktische Beispiele

Hier ist ein einfaches Beispiel:

  1. Du hast ein UserForm mit 6 Textboxen.
  2. Du möchtest, dass nur bei TB-1, TB-3 und TB-5 eine spezielle Aktion ausgeführt wird.
  3. Verwende den obigen VBA-Code und passe die Case-Anweisungen an deine Textboxen an.

Tipps für Profis

  • Code Modularisieren: Verwende Subroutinen, um wiederkehrende Logik zu trennen und den Code übersichtlicher zu gestalten.

  • Fehlerbehandlung Implementieren: Nutze On Error-Anweisungen, um Laufzeitfehler gezielt abzufangen.

  • Regelmäßige Backups: Sichere deine Excel-Datei regelmäßig, insbesondere wenn du VBA-Code änderst.


FAQ: Häufige Fragen

1. Kann ich auch andere Steuerelemente wie Kombinationsfelder verwenden?
Ja, du kannst den gleichen Ansatz auch für andere Steuerelemente in einem UserForm verwenden.

2. Warum funktioniert mein Code nicht, obwohl ich alles richtig eingegeben habe?
Überprüfe, ob die Namen der Textboxen exakt mit den im Code verwendeten Namen übereinstimmen. Kleinste Unterschiede können zu Fehlern führen.

3. Gibt es Einschränkungen bei der Anzahl der Textboxen?
Technisch gibt es keine feste Grenze, aber es wird empfohlen, die Übersichtlichkeit nicht zu beeinträchtigen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige