Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1056to1060
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
Inhaltsverzeichnis

Zelleninhalt kürzen

Zelleninhalt kürzen
10.03.2009 10:30:56
Gordon
Moin moin,
ich hab mal eine Frage die ich schon gestern gestellt hat, wobei ich das aber ein einem älteren Beitrag (von letzter Woche) von mir tat und ich nun nur Angst habe, dass dieser nicht mehr gesehen wird. Daher stelle ich diese Frage hier jetzt noch mal. Ich hoffe, dass ist so in Ordnung. Und wenn nicht, einfach ignorieren. ;-)
Also:
Ich habe ein kleines Problem mit einem Code im Worksheet_Change. Habe dort einen Code stehen, der eigentlich super läuft (Dank Franz, mein Held!), wobei nun nach ein paar kleineren Änderunegn ein bestimmter Code-Teil nicht ausgeführt wird. Dieser hier:

Private Sub Worksheet_Change(ByVal Target As Range)
'Werte in Spalte G einkürzen
If Not Intersect(Target, Columns("G:G")) Is Nothing And Target.Row > 5 Then
For Each rG In Target.Columns("G:G")
If Len(rG.Value) > 4 Then
rG.Value = Right(rG.Value, 4)
End If
Next rG
End If
End Sub


Zur Erklärung:
Es soll so laufen, dass in der Spalte "G" eine Eingabe auf die letzten vier Zeichen gekürzt wird. Und das ab einschließlich Zeile 6 abwärts.
Aber irgendwie läuft er nicht mehr. Woran kann das liegen? Jemand eine Idee? Bin mir selber nicht ganz sicher, wie ich daran gehen soll. 'rG' ist eine Range und wird so bestimmt:


With wksVergleich
Set rG = .Range(.Cells(1, 55), .Cells(lngZeilen_V, 55)).Find(what:=varDS_Nr, _
LookIn:=xlValues, lookat:=xlWhole)
End With


Gruß
Gordon

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelleninhalt kürzen
10.03.2009 11:41:40
mpb
Hallo Gordon,
der alte Thread ist wohl nicht mehr einsehbar und von daher Deine Problembeschreibung nicht nachzuvollziehen. Post noch den kompletten Code vor und nach den "kleineren Änderungen", denn die verursachen das Problem.
Außerdem solltest Du besc hreib, was nicht funktioniert. Gibt es eine Fehlermeldung? Wenn ja, welche und in welcher Codezeile tritt der Fehler auf? Läuft die Ereignisprozedur, aber das Ergebnis ist nicht das gewünschte? Wenn ja, was genau ist falsch?
Gruß
Martin
AW: Zelleninhalt kürzen
10.03.2009 13:24:05
Gordon
So,
habe mal eine Testdatei vorbereitet: https://www.herber.de/bbs/user/60166.xls
Zur Datei:
Sie enthält nun den ganzen Code. Und zwar passiert folgendes, wenn man etwas auf Tabellenblatt1 ändern:
  • Änderungen sollen eingefärbt werden. (Daher eine Kopie des Blattes in der Datei)

  • Dieses soll auch noch gehen, wenn Zeilen gelöscht oder eingefügt werden. Daher befinden sich in Spalte BC Datensatznummern für die Zuordnung.

  • Wird eine neue Zeile beschrieben bzw. erst eingefügt und dann beschreiben, bekommt diese Zeile automatisch eine Nummer und wird auch auf der Kopie vermerkt.

  • Wenn eine Zeile gelöscht wird, wird dieses in der Kopie vermerkt.

  • Des Weiteren werden noch diverse Einträge und Formatirungen vorgenommen....

  • Das alles funktioniert auch super bzw. wie es soll.
    Nur funktioniert der schon bschriebene Code-Schnipsel nicht richtig. Zeichenketten die länger als 4 Zeichen sind und in Spalte G stehen bzw. eingetragen werden, sollen auf die letzten 4 Zeichen reduziert werden. Und das klappt halt noch nicht richtig.
    Habe eben erst festgestellt, dass das nur klappt, wenn die Zeile, worin geschrieben wird, noch keine Datensatznummer hat. Sobald eine Datensatznummer vorhanden ist, wird in Spalte G nichts mehr geändert. Es kommt auch kein Fehlertext oder so. Es muss also anscheinend mit der Datensatznummer bzw. mit der Vergabe dieser zu tun haben. Aber inwiefern kann ich das noch nicht sagen.... :(
    Vielleicht sieht ja jemand den Fehler. Der Code wo es um kürzen geht, steht recht weit unten im Makro.
    Gruß
    Gordon
    Anzeige
    AW: Zelleninhalt kürzen
    10.03.2009 14:17:33
    mpb
    Hallo Gordon,
    ersetze mal die Zeile
    For Each rG In Target.Columns("G:G")
    durch
    For Each rG In Target.Columns("A:A")
    Gruß
    Martin
    AW: Zelleninhalt kürzen
    10.03.2009 14:28:32
    Gordon
    Ok,
    das geht dann, aber wenn ich eine Zeile dann lösche, wird auch in Spalte A der Name gekürzt....das soll aber natürlich nicht sein. :(
    AW: Zelleninhalt kürzen
    10.03.2009 15:18:32
    Renee
    Hi, Gordon
    
    'Werte in Spalte G einkürzen
    If Not Intersect(Target, Columns("G:G")) Is Nothing And Target.Row > 5 Then
    Application.EnableEvents = False
    For Each rG In Target
    If rG.Column = 7 And Len(rG.Value) > 4 Then
    rG.Value = Right(rG.Value, 4)
    End If
    Next rG
    Application.EnableEvents = True
    End If
    ....
    


    GreetZ Renée

    Anzeige
    AW: Zelleninhalt kürzen
    10.03.2009 15:35:09
    Gordon
    Klasse,
    das hat nun funkioniert! Danke dir!
    Gruß
    Gordon *happy*

    299 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige