Office: (Office 2016) Wenn in Spalte A etwas eingetragen wird, dann....

Helfe beim Thema Wenn in Spalte A etwas eingetragen wird, dann.... in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Moin zusammen, folgendes Problem: Ich sitze in der Produktionsplanung und ich versuche eine Excel Tabelle zu erstellen für Terminverschiebungen. Das... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von MakroBeginner, 13. November 2021.

  1. Wenn in Spalte A etwas eingetragen wird, dann....


    Moin zusammen,

    folgendes Problem: Ich sitze in der Produktionsplanung und ich versuche eine Excel Tabelle zu erstellen für Terminverschiebungen. Das ganze läuft so ab, dass die Produktionsmitarbeiter eintragen sollen, welche Produktion sie nicht rechtzeitig fertigen können und wir in der Planung tragen Auftragsnummer ein und versenden eine Mail an den Vertrieb. So weit so gut.

    Um den manuellen Aufwand so gering wie möglich zu halten, habe ich schon einiges geschafft. Ich scheitere aber gerade an einer (so scheint es mir zumindest) einfachen Idee:
    Sofern in Spalte A ein neuer Eintrag erfolgt ("Produktionsnummer"), dann soll erstmals geprüft werden, ob diese Nummer schon in Spalte A existiert. Sollte diese Nummer beriets eingetragen sein, soll eine Fehlermeldung erscheinen.
    Sollte der Eintrag neu sein, soll in Spalte G der Wert "neu" eingetragen werden (die Werte dazwischen sind Datenbankabfragen).
    Andersherum soll die Spalte G natürlich nichts mehr enthalten, sollte der Wert in Spalte A mal wieder rausgenommen werden. Mit einer Wenn Funktion wäre das sehr simpel, wie funktioniert das im Makro?

    Ich freue mich über jeden sachdienlichen Hinweise ;) :D Das würde uns sehr viel Arbeit abnehmen.
    Vielen Dank vorab!
     
    MakroBeginner, 13. November 2021
    #1
  2. Hajo_Zi
    Hajo_Zi Erfahrener User
    das geht nur per VBA.
    starte den VBA Editor (Alt+F11), Bild sollte zweigeteilt sein ansonsten Strg+R, Doppelklick auf Deine Datei, Doppelklick auf Deine Tabelle, Code ins rechte Fenster kopieren, VBA Editor schließen.
    Das Makro wird automatisch gestartet.
    Der Code wirkt nur in dieser Tabelle.

    Code:
    Option Explicit
    
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim Rafound As Range
        Set Rafound = Columns(1).Find(Target, Range("A1"), , xlPart, , xlNext)
        ' xlPart enthalten
        ' xlWhole kompletter Vergleich
        If Not Rafound Is Nothing Then
            Range("G" & Target.Row) = "Neu"
        Else
            MsgBox "schon vorhanden in Zeile " & Target.Row
        End If
        Set Rafound = Nothing
    End Sub
    
    Wenn in Spalte A etwas eingetragen wird, dann.... GrußformelWenn in Spalte A etwas eingetragen wird, dann.... Homepage
     
  3. Hi,

    danke schonmal Hajo_Zi. Es arbeitet schon mal gut. Problem ist jetzt, dass er immer anzeigt, dass die Produktion schon existiert, nämlich in der gerade eingefügten Zeile. Wie kann das umgangen werden?
    Er soll ja nur bei doppelten Werten sich melden. Aber die MsgBox mit der Anzeige, wo die bereits vorhanden ist, ist klasse!
     
    MakroBeginner, 13. November 2021
    #3
  4. Beverly
    Beverly Erfahrener User

    Wenn in Spalte A etwas eingetragen wird, dann....

    Hi,

    hier eine Variante, die nur ausgeführt wird wenn in Spalte A etwas eingegeben wird, bei einer Doppeleingabe wieder rückgängig gemacht und beim (späteren) Löschen eines Eintrags auch Spalte G wieder geleert wird:

    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim rngFind As Range
        Set Target = Intersect(Target, Columns(1))
        ' Eingabe erfolgt in Spalte A
        If Not Target Is Nothing Then
            ' Inhalt wurde gelöscht
            If Target = "" Then
                ' Spalte G leeren
                Target.Offset(0, 6).ClearContents
            Else
                ' suche die Eingabe in Spalte A
                Set rngFind = Columns(1).Find(Target.Value, lookat:=xlWhole)
                ' Eingabe nur einmal vorhanden
                If rngFind.Address = Target.Address Then
                    ' in Spalte G Eintrag
                    Target.Offset(0, 6) = "neu"
                ' Eingabe bereits vorhanden
                Else
                    ' Reaktion auf Eingabe abschalten
                    Application.EnableEvents = False
                    MsgBox "Bereits vorhanden"
                    ' Eingabe rückgängig machen
                    Application.Undo
                    ' Reaktion auf Eingabe wieder einschalten
                    Application.EnableEvents = True
                End If
            End If
        End If
    End Sub
    
    

    Wenn in Spalte A etwas eingetragen wird, dann.... GrußformelWenn in Spalte A etwas eingetragen wird, dann.... Beverly's Excel - Inn
     
  5. Hajo_Zi
    Hajo_Zi Erfahrener User
    Entschuldigung, nicht ausführlich getestet.
    Code:
    Option Explicit
    
    Private Sub Worksheet_Change(ByVal Target As Range)
        Dim Rafound As Range
        If Target.Column = 1 Then
            Set Rafound = Columns(1).Find(Target, Range("A1"), , xlPart, , xlNext)
            ' xlPart enthalten
            ' xlWhole kompletter Vergleich
            If Rafound Is Nothing Or Target.Address = Rafound.Address Then
                Application.EnableEvents = False
                Range("G" & Target.Row) = "Neu"
                Application.EnableEvents = True
            Else
                MsgBox "schon vorhanden in Zeile " & Rafound.Row
            End If
            Set Rafound = Nothing
        End If
    End Sub
    
     
  6. Wow klasse! Das funktioniert.

    Vielen lieben Dank!!!
     
    MakroBeginner, 13. November 2021
    #6
Thema:

Wenn in Spalte A etwas eingetragen wird, dann....

Die Seite wird geladen...
  1. Wenn in Spalte A etwas eingetragen wird, dann.... - Similar Threads - Spalte eingetragen

  2. Bedingte Formatierung, vergleich von zwei Spalten

    in Microsoft Excel Hilfe
    Bedingte Formatierung, vergleich von zwei Spalten: Hallo, vielleicht hat jemand eine Idee, ich bin schon am Verzweifeln. Möglicherweise geht es auch gar nicht. In Spalte H und I stehen Werte, die miteinander und gegeneinander verglichen werden...
  3. Werte aus mehreren verschiedenen Spalten in einer Spalte

    in Microsoft Excel Hilfe
    Werte aus mehreren verschiedenen Spalten in einer Spalte: Hallo, ich stehe vor dem Problem dass ich den Inhalt mehrere Spalten (Jänner -Dezember; sind nicht zusammenhängend), Eindeutig und Sortiert gerne in einer weiteren - Gesamtübersichts - Spalte...
  4. Summe berechnen mit Bedingungen in zwei Spalten

    in Microsoft Excel Hilfe
    Summe berechnen mit Bedingungen in zwei Spalten: Hallo zusammen, ich möchte gerne in einer Tabelle in der ich alle Kundenaufträge liste die offenen Rechnungen automatisch in einer Zelle addieren, so dass ich immer sehe wie groß mein aktueller...
  5. Bunter Vergleich zwischen zwei Spalten (Preise)

    in Microsoft Excel Hilfe
    Bunter Vergleich zwischen zwei Spalten (Preise): Hallo! Ich habe eigentlich eine ganz banale Sache und finde nichts!! Ich habe 2 (oder auch mal 3) Spalten mit Preise von unterschiedlichen Lieferanten und möchte die Spalten eigentlich miteinander...
  6. Spalte beim Öffnen filtern Nutzerabhängig

    in Microsoft Excel Hilfe
    Spalte beim Öffnen filtern Nutzerabhängig: Hallo zusammen, Ich habe eine alte Excel-Datei, die beim Öffnen Nutzerabhängig eine Spalte filtert. Dh. bspw. Nutzer Thomas Müller (User-ID: id1234) öffnet die Datei und es werden automatisch nur...
  7. den zuletzt eingetragenen Wert aus einer Spalte in eine Zelle übernehmen

    in Microsoft Excel Hilfe
    den zuletzt eingetragenen Wert aus einer Spalte in eine Zelle übernehmen: Seit langem habe ich mal wieder ein Problem, das ich hoffentlich mit eurer Hilfe gelöst bekomme. Ich möchte immer den zuletzt eingetragenen Wert aus einer Spalte in eine Zelle übernehmen. Ich habe...
  8. Spalte zählen wenn dort Wert eingetragen

    in Microsoft Excel Hilfe
    Spalte zählen wenn dort Wert eingetragen: Frage zu Excel: Benötige eine Formel für folgenden Fall: In einer Spalte sind mehrere x eingetragen. Manchmal auch keins. Als Ausgabewert soll dann entweder eine 1 stehen (wenn ein oder mehrere x...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden