Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1880to1884
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

Makro bei Änderung aktive Zeile

Makro bei Änderung aktive Zeile
15.05.2022 15:46:46
Jochen
Hallo Forum,
ich bin schon oft durch euer Forum weiter gekommen, so wie ich euch kenne, auch dieses mal.
Kurze Erklärung zu meiner Tabelle, durch Doppel-Click starte ich eine UF der die aktive Zeile ausliest, u. so auch wieder zurück in die Tabelle schreibt, klappt alles bestens.
Nun zu meinen Problem, ich möchte eine Prüfung der Daten die zurück in die Tabelle geschrieben werden, bekomme ich auch noch hin, was nicht, dass nur eine Meldung erscheint, es kommen immer so viele wie ich auch Daten zurückschrieben lasse, das können bis zu 19 Stück sein. Wäre schon dankbar wenn es nur noch eine Meldung wäre, egal ob mit MsgBox oder UF, oder ist dies auch mit Zähler für die Veränderungen möglich.
mein bisheriger Ansatz:
  • 
    Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim Bereich As Range
    Set Bereich = Range("A4:AE750")
    If Intersect(Target, Bereich) Is Nothing Then
    Exit Sub
    'Else
    Call DatenUebertragen 'UserForm
    End If
    End Sub
    

  • Gruß Jochen

    4
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Makro bei Änderung aktive Zeile
    15.05.2022 16:37:55
    Yal
    Hallo Jochen,
    Es wäre sehr interessant, die Prozedur DatenUebertragen zu sehen, weil da spielt die Musik. Idealerweise die ganze Datei.
    Ich gehe davon aus, dass das Auskommentieren vom "Else" aus Versehen reingekommen ist, denn sonst wird immer nur den Exit Sub gelten. DatenUebertragen wird nie ausgeführt.
    Du musst bedenken: wenn Du in der Zeile reinschreibst, dann löst es ein "Change"-Ereignis. Du musst vor dem Schreiben einen
    Application.EnableEvents = False
    setzen. Und danach wieder auf True.
    Wenn der Prüfbereich sich nie ändert, brauchst du keine Variable dafür.
    Wie bekommt DatenUebertragen mit, in welcher Zeile den Change stattgefunden hat?
    VG
    Yal
    Anzeige
    AW: Makro bei Änderung aktive Zeile
    15.05.2022 17:59:54
    Jochen
    Hallo Yal,
    danke für die schnelle Antwort, wie gewünscht anbei die ganze Datei, damit du dir ein besseres Bild machen kannst. Wundere Dich nicht wegen der seltsamen den Schriftzeichen bei den Buttons, dafür habe eigens eine passende Symbol-Schriftart erstellt.
    https://www.herber.de/bbs/user/153082.zip
    Gruß Jochen
    AW: Makro bei Änderung aktive Zeile
    16.05.2022 13:55:13
    Yal
    Hallo Jochen,
    vielen Dank für deine Mühe die ganze Datei zur Verfügung zu stellen.
    Deine Anwendung ist schon sehr fortgeschritten, da braucht man eine komplette Anweisung um reinzukommen.
    Es bleibt aber bei der Punkt: wenn bei dem Schreiben in einer Zelle ein Ereignis ausgelöst wird, dann muss bei jeden Vorgang, die aus dem Code in die Tabelle schreibt, zuerst die Ereignis-Fähigkeit blockiert (Application.EnableEvents = False) und anschliessend wieder freigegeben werden (Application.EnableEvents = True).
    Also bei Dir bei neueKundenDaten... und KundenDaten_aendern..
    VG
    Yal
    Anzeige
    AW: Makro bei Änderung aktive Zeile
    15.05.2022 17:49:18
    Luschi
    Hallo Jochen,
    was passiert, wenn man per Vba Werte in Tabellenzellen schreibt bzw. mit Select/Activate den Bildschirmcursor positioniert, habe ich hier beschrieben:
    https://www.herber.de/forum/messages/1883697.html
    Und darin steht auch, welche Maßnahmen dagegen tun muß.
    Gruß von Luschi
    aus klein-Paris

    Links zu Excel-Dialogen

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige