Excel > Zellenüberschreibung

  • Sonstige

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von io.

    Excel > Zellenüberschreibung

    Hallo!

    Eine wahrscheinlich ziemlich triviale Excel-Frage: Wie kann ich Excel so umstellen, dass ich bei Texteingabe in eine Zelle diese nicht überschreibe, sondern den neuen Text einfach an den alten in der Zelle anfüge?

    Danke, Arno
    Danke - F2 ist für kleine Änderungen ganz ok...

    Für Änderungen im großen Stil bekam ich folgenden Ratschlag:

    Du könntest den Inhalt des Sheets in ein zweites kopieren, das du auf Hidden setzt und im Change-Makro des sichtbaren Sheets den Inhalt der betreffenden Zelle des versteckten Sheets auslesen, den neu eingegebenen Inhalt anhängen und das Ergebnis in beiden Sheets speichern. Dabei musst du während der Makro-Ausführung Application.EnableEvents auf False und danach wieder auf True setzen, weil das Change-Event ja auch eintritt, wenn ein Makro in die Zelle schreibt.

    Trotzdem irgendwie enttäuschend, dass Excel das nicht intern regeln kann.

    lg, Arno
    Hallo io,

    naja, wer wird denn so früh aufgeben...

    Probiere mal diesen Quelltext (bitte in den Bereich Tabelle1 o.ä. kopieren), der kann bestimmt noch optimiert werden, denn ein Löschen ist nicht vorgesehen, außerdem muss kontrolliert werden ob Target mehr als eine Zelle ist:

    Quellcode

    1. Option Explicit
    2. Dim strTmp As String
    3. Dim blnAddString As Boolean
    4. Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    5. If blnAddString Then Exit Sub
    6. blnAddString = True
    7. Target.Formula = strTmp & Target.Formula
    8. blnAddString = False
    9. End Sub
    10. Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
    11. strTmp = Target.Formula
    12. End Sub


    oder das hier:

    Quellcode

    1. Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
    2. SendKeys "{F2}"
    3. End Sub


    Gruß Markus
    Hallo,

    Das ist eine sehr ellegante Lösung - danke alchimist!

    Finde es aber gerade wegen des offensichtlich unbedeutenden Mehraufwandes schade, dass Excel diese Option nicht standardmäßig implementiert hat...

    Aber nocheinmal DANKE für das reply!

    lg, Arno