Office: (Office 2016) VBA: Wenn Zelle X einen bestimmten Wert hat, soll in Zelle Y etwas eingetragen werden

Helfe beim Thema VBA: Wenn Zelle X einen bestimmten Wert hat, soll in Zelle Y etwas eingetragen werden in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Servus zusammen, Zunächst mal: Freut mich unter Euren Reihen zu sein ;-) Nun zum Problem. Ich möchte über ein Makro eine Funktion bauen, die wie... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von PapaEmeritus3, 9. September 2020.

  1. VBA: Wenn Zelle X einen bestimmten Wert hat, soll in Zelle Y etwas eingetragen werden


    Servus zusammen,

    Zunächst mal: Freut mich unter Euren Reihen zu sein ;-)

    Nun zum Problem.
    Ich möchte über ein Makro eine Funktion bauen, die wie folgt aufgebaut ist:
    Spalte A hat nur ein Merkmal in sechs Ausprägungen; als Freitextfeld oder über DropDown (Datenüberprüfung)
    Wenn 3 bestimmte Ausprägungen in der Zelle stehen, über DropDown oder Freitext, soll in der Zelle daneben ein "-" (ein Minus) erscheinen.

    Leider macht mich das Ganze langsam verrückt...

    Private Sub Worksheet_Doc_No(ByVal Target As Range)
    If Intersect(Target, Range("A1:A1000")) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    If Target.Value = "Email" Or "Besuch" Or "Anruf" Then
    Target.Offset(0, 1) = "-"
    Else:
    Target.Offset(0, 1).ClearContents
    End If
    End Sub

    Kann mir einer hierbei vielleicht helfen?

    Schönen Gruß,
    Papst im Ruhestand, der III
     
    PapaEmeritus3, 9. September 2020
    #1
  2. Lutz Fricke Erfahrener User
    Hallo PapaEmeritus3,

    musst Du deine Audienzen protokollieren??

    Wo genau ist dein Problem?
    Spontan sehe ich neben dem "Else" einen Doppelpunkt, der da nicht hingehört.
    Dann geht "If Target.Value = "Email" Or "Besuch" Or "Anruf" Then" nicht, sondern "If Target.Value = "Email" Or Target.Value = "Besuch" Or Target.Value = "Anruf" Then".
    Außerdem übergibst Du beim Start des Makro einen Zellbezug. Aber wo kommt der her? Startest Du das Makro durch ein anderes oder sollte es eigentlich ein Event sein?

    Hab da mal was gebastelt:
    HTML:
    Private Sub Worksheet_Doc_No()
    
    Dim Zeile As Integer
    
    For Zeile = 1 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(Zeile, 1) = "Email" Or Cells(Zeile, 1) = "Besuch" Or Cells(Zeile, 1) = "Anruf" Then
        Cells(Zeile, 2) = "-"
        Else
        Cells(Zeile, 2).ClearContents
        End If
    Next Zeile
    
    End Sub
    Gruß,
    Lutz
     
    Lutz Fricke, 10. September 2020
    #2
  3. Hi Lutz,

    vielen Dank!
    Protokollieren, nicht - die Datei hat einen anderen Hintergrund ;-)

    Das Makro soll eigentlich "permanent" laufen, also sobald ein Zelleneintrag vorgenommen ist, soll die Nachbarzelle befüllt werden.
     
    PapaEmeritus3, 10. September 2020
    #3
  4. Lutz Fricke Erfahrener User

    VBA: Wenn Zelle X einen bestimmten Wert hat, soll in Zelle Y etwas eingetragen werden

    Hallo PapaEmeritus3,

    na dann ist es ja fast noch viel einfacher:
    HTML:
    Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    If Target.Value = "Email" Or Target.Value = "Besuch" Or Target.Value = "Anruf" Then
    Target.Offset(0, 1) = "-"
    Else
    Target.Offset(0, 1).ClearContents
    End If
    
    End Sub
    
    Das Makro gehört in dein VBA-Projekt in das Blatt, in dem es arbeiten soll.
    Der Name "Private Sub Worksheet_Change(ByVal Target As Range)" ist wichtig und darf nicht geändert werden, da es sich um ein Event handelt. Also jedes mal, wenn du eine Zelle in dem Blatt änderst, läuft das Makro und prüft die gerade geänderte Zelle (Target).

    Gruß,
    Lutz
     
    Lutz Fricke, 10. September 2020
    #4
  5. Und wenn ich bereits ein Makro hab, welches mit Private Sub Worksheet_Change(ByVal Target As Range) beginnt?
    Fehler "Mehrdeutiger Name"...

    Hast Du auch hier Aushilfe?
     
    PapaEmeritus3, 10. September 2020
    #5
  6. Lutz Fricke Erfahrener User
    Dann musst Du beide zusammenschmeißen und, falls es sich um verschiedene zu bearbeitende Bereiche handelt, über eine If-Abfrage unterscheiden.

    Du kannst ja einfach mal beide Makros posten und dann schmeißen wir die zusammen.

    Gruß,
    Lutz
     
    Lutz Fricke, 10. September 2020
    #6
  7. Gerne ;-)


    Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("D1:D1000")) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    If Target = "" Then
    Target.Offset(0, 1).ClearContents
    Else:
    Target.Offset(0, 1) = CDate(Format(Now, "dd.mm.yyyy"))
    End If
    End Sub

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    If Target.Value = "Email" Or Target.Value = "Besuch" Or Target.Value = "Anruf" Then
    Target.Offset(0, 1) = "-"
    Else
    Target.Offset(0, 1).ClearContents
    End If

    End Sub
     
    PapaEmeritus3, 10. September 2020
    #7
  8. Lutz Fricke Erfahrener User

    VBA: Wenn Zelle X einen bestimmten Wert hat, soll in Zelle Y etwas eingetragen werden

    HTML:
    Private Sub Worksheet_Change(ByVal Target As Range)
    
    If Target.Column = 4 Then
        If Target.Count > 1 Then Exit Sub
        If Target = "" Then
            Target.Offset(0, 1).ClearContents
        Else
            Target.Offset(0, 1) = CDate(Format(Now, "dd.mm.yyyy"))
        End If
    ElseIf Target.Column = 1 Then
        If Target.Count > 1 Then Exit Sub
        If Target.Value = "Email" Or Target.Value = "Besuch" Or Target.Value = "Anruf" Then
            Target.Offset(0, 1) = "-"
        Else
            Target.Offset(0, 1).ClearContents
        End If
    End If
    
    End Sub
     
    Lutz Fricke, 10. September 2020
    #8
  9. You, Sir, are the best! :-D
    Danke!!!!!!!!
     
    PapaEmeritus3, 10. September 2020
    #9
  10. Lutz Fricke Erfahrener User
    Keine Ursache ;-)
     
    Lutz Fricke, 10. September 2020
    #10
Thema:

VBA: Wenn Zelle X einen bestimmten Wert hat, soll in Zelle Y etwas eingetragen werden

Die Seite wird geladen...
  1. VBA: Wenn Zelle X einen bestimmten Wert hat, soll in Zelle Y etwas eingetragen werden - Similar Threads - VBA Zelle bestimmten

  2. Excel VBA: Sprung zu bestimmter Zelle

    in Microsoft Excel Hilfe
    Excel VBA: Sprung zu bestimmter Zelle: Hallo Zusammen, ich bin leider ein absoluter VBA-Neuling und würde mich daher sehr über Eure Hilfe freuen! Ich habe folgendes Problem: Wenn ich in Zelle D3 eine 1 eintrage, möchte ich zu Zelle...
  3. Bestimmte Zellen kopieren und Einfügen vba

    in Microsoft Excel Hilfe
    Bestimmte Zellen kopieren und Einfügen vba: Hallo zusammen, Ich bekomme es leider nicht hin... Seit 1 Stunde tu ich schon rum nur ohne Erfolg. Ich würde gerne per VBA in Spalte D nach Zelleninhalt suchen wie zb. "Max". Falls dies der Fall...
  4. VBA-Wenn Bedingung erfüllt dann bestimmte Zellen in anderes Excel Dokument kopieren

    in Microsoft Excel Hilfe
    VBA-Wenn Bedingung erfüllt dann bestimmte Zellen in anderes Excel Dokument kopieren: Hey Leute, bin erst seit gestern am VBA-Programmieren und bin mit meinem Projekt schon gut voran gekommen. Aber nun hänge ich irgendwie. Da mir das Forum gestern schon mega weitergeholfen hat,...
  5. VBA Bestimmte Zellen aus einer anderen Datei in eine andere Datei kopieren

    in Microsoft Excel Hilfe
    VBA Bestimmte Zellen aus einer anderen Datei in eine andere Datei kopieren: Hallo Zusammen, kann mir jemand hier helfen? Bin in VBA noch Anfänger! Ich nutze unterstehenden Code um ein Tabellenblatt in eine andere Datei zu kopieren. Funktioniert auch. Da in der...
  6. Text per VBA in bestimmter Zelle erweitern

    in Microsoft Excel Hilfe
    Text per VBA in bestimmter Zelle erweitern: Hallo, ich habe folgendes vor: Alle Eingaben in den Zellen B3, B5, B8 und B13 sollen, falls klein geschrieben, nach Eingabe automatisch gross geschrieben werden - das habe ich geschafft. Was...
  7. Zeilen und Spalten mit VBA ausblenden wenn Wert 0 in bestimmten Zellen

    in Microsoft Excel Hilfe
    Zeilen und Spalten mit VBA ausblenden wenn Wert 0 in bestimmten Zellen: Hallo Excel Kolleginnen und Kollegen, ich habe mehrere Excel-Tabellen mit gleichem Layout aber nicht immer die gleichen Spalten und Zeilen befüllt, möchte nun mit VBA und Makro mir die Zeilen...
  8. VBA-Bestimmte Zelle durch ComboBox Selektion finden und Werte addieren

    in Microsoft Excel Hilfe
    VBA-Bestimmte Zelle durch ComboBox Selektion finden und Werte addieren: Hallo Zusammen, das ist mein erster Eintrag in dieses Forum. Ich habe eine Kostenkalkulation erstellt,innerhalb welcher ich mit einer Userform ermögliche,dass die passenden Kriterien in...

Users found this page by searching for:

  1. excel feldwert wenn wert x

    ,
  2. Excel VBA wenn wert in Spalte

    ,
  3. wenn wert einer zelle in liste vba

    ,
  4. excel vb zelle auswählen wenn wert x,
  5. wenn in zelle x das steht soll in zelle y das kommen,
  6. excel vba wenn in spalte a kein x dann,
  7. vba x in (Y)
  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