Live-Forum - Die aktuellen Beiträge
Datum
Titel
20.05.2025 16:19:36
20.05.2025 15:34:36
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Worksheet-Change Makro

Forumthread: Worksheet-Change Makro

Worksheet-Change Makro
11.08.2008 12:03:41
David
Hallo zusammen.
ich wollte folgendes Makro ausführen lassen:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
Target = Left(Target, Len(Target) - 1)
End If
End Sub


Der Zweck ist, nach jeder Eingabe in der Spalte A diese Eingabe um eine Stelle zu kürzen. Komischerweise läuft das Makro, wenn ich auf die Anweisungs-Zeile "Target =..." einen Haltepunkt setze, problemlos durch, wenn ich den aber rausnehme, bekomme ich einen Fehler.
Ich hatte testhalber den Wert schon als Variable deklariert (x = Len(Target)), hier ebenfalls ein unterschiedliches Ergebnis: Mit Haltepunkt bekommt die Variable den korrekten Wert der Länge der Zeichenfolge, ohne Haltepunkt ist die Variable = 0.
Warum? Was mache ich falsch?
Gruß
David

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Worksheet-Change Makro
11.08.2008 12:14:00
Tobias
Hallo David!
Rekursiver Aufruf des Events. Jedes Mal wenn Du den Inhalt der Zelle änderst wird das Makro neu gestartet und rundet wieder ein Zeichen ab. Deaktiviere Events - solange das Makro läuft - und prüfe ob der Zellinhalt eventuell leer ist:


Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Worksheet_Change_Error
    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    If Target.Column = 1 Then
        Target = Left(Target, Len(Target) - 1)
    End If
Worksheet_Change_Exit:
    On Error GoTo 0
    Application.EnableEvents = True
    Exit Sub
Worksheet_Change_Error:
    MsgBox Err.Description
    GoTo Worksheet_Change_Exit
End Sub


Schönen Gruß, Tobias
http://www.tobiasschmid.de/

Anzeige
AW: Worksheet-Change Makro
11.08.2008 12:16:52
David
Ja, das mit dem Event leuchtet mir ein. Ich wusste nicht, dass die durch das Makro ausgelöste Veränderung das Makro wieder neu startet. Damit ergibt die Verhaltensweise mit dem Haltepunkt durchaus einen Sinn.
Danke für den Hinweis, wieder was gelernt.
Gruß
David

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

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