Office: Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle

Helfe beim Thema Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich schon wieder... :-( Eigentlich klingt es für mich soooo einfach, aber irgendwie bekomme ich es trotzdem nicht hin. Ich möchte... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Steffi H, 7. Juni 2023.

  1. Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle


    Hallo zusammen,

    ich schon wieder... :-(

    Eigentlich klingt es für mich soooo einfach, aber irgendwie bekomme ich es trotzdem nicht hin.

    Ich möchte eine Formel kreieren (oder einen VBA-Code), welcher besagt, dass wenn z. B. die Zelle C10>0 ist, dann soll Excel automatisch in die Zelle P10 "springen".

    Stehe da leider mal wieder auf dem Schlauch... Hoffe, es kann mir einer von Euch helfen!?

    Vielen lieben Dank im Voraus!

    Viele Grüße
    Steffi
     
    Steffi H, 7. Juni 2023
    #1
  2. Sorry, falsch formuliert bzw. zu "kurz" gedacht...
    Ich fange noch einmal an...

    Ich stelle es mir wie folgt vor:
    Wenn ich in der Spalte C ab Zeile 10 einen Wert eintrage, dann soll in der entsprechenden Zeile automatisch die Spalte P "aktiviert" werden. Also zum Beispiel gebe ich in der Zelle C10 einen Wert ein, dann soll das nächste Feld automatisch P10 sein, wenn ich aber den Wert in der Zelle C20 eingebe, dann soll das nächste Feld entsprechend P20 sein.

    Ich hoffe, es kann mich jemand verstehen und mir helfen...

    Viele Grüße
    Steffi
     
    Steffi H, 7. Juni 2023
    #2
  3. Doming
    Doming hat Ahnung
    Hallo Steffi
    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Column = 3 And Target.Value <> "" Then
            Cells(Target.Row, 16).Select
        End If
    End Sub
    Gruß
    Doming
     
    Doming, 7. Juni 2023
    #3
    1 Person gefällt das.
  4. Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle

    Hi Doming,

    mal wieder ein herzliches Dankeschön!

    Leider bin ich dafür gerade echt zu doof... :-( Es funktioniert bei mir leider nicht. Und es darf wirklich erst ab Zeile 10 geprüft werden, ob ein Wert eingetragen ist. Ich habe auch schon einen VBA Code mit Sub Worksheet_Change (ByVal Target As Range).

    Viele Grüße
    Steffi
     
    Steffi H, 7. Juni 2023
    #4
  5. Doming
    Doming hat Ahnung
    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Row < 10 Then Exit Sub
       If Target.Column = 3 And Target.Value <> "" Then
           Cells(Target.Row, 16).Select
       End If
    End Sub
    
    Du kannst die Zeilen ja einfach in Deine Worksheet_Change mit einfügen.
    Hast Du denn verstanden, was die Zeilen machen? Denn nur dann kannst Du sie auch modifizieren.
     
    Doming, 7. Juni 2023
    #5
  6. Danke, ja ich denke schon, dass ich es verstanden habe und wenn ich es richtig verstehe, dann macht das für mich auch Sinn und ist eigentlich genau das, was ich suche. Was aber bei mir irgendwie nicht funktioniert... :-(
    Ich habe es so verstanden:
    Wenn Zeile kleiner 10, dann nichts machen... Wenn Ziel Spalte (sprich die Spalte, wo gesucht werden soll) = 3 (also Spalte C) ist und der Wert in dieser Spalte größer null, dann soll er in die Spalte P (sprich 16) springen. Oder habe ich es doch falsch verstanden?
     
    Steffi H, 7. Juni 2023
    #6
  7. Doming
    Doming hat Ahnung
    so genau war es gemeint :-)
    Setz doch mal eine Haltemarke in die erste Zeile von Workbook_Change, um festzustellen, ob er der Code überhaupt durchlaufen wird. Und dann mit F8 schrittweise weiter, um festzustellen, wo der Fehler sitzt.
    Oder Du stellst Deinen Code hier mal zur Verfügung.
     
    Doming, 7. Juni 2023
    #7
  8. HKindler
    HKindler Erfahrener User

    Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle

    Hi,

    @Doming: Wenn jemand sich offensichtlich nicht gut mit VBA auskennt und dazu noch sagt, dass es bereits ein Worksheet_Change gibt, dann sollte man demjenigen keinen Code mit Exit Sub empfehlen. Und erst recht nicht mit dem Hinweis diesen Code einfach in den bisherigen einzufügen..

    @Steffi nimm besser den Code
    Code:
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Row >= 10 Then
            If Target.Column = 3 And Target.Value <> "" Then
                Cells(Target.Row, 16).Select
            End If
        End If
    End Sub
    oder noch besser:
    Markiere alle Zellen in den Spalten C und P, Rechtsklick, "Zellen formatieren", Reiter "Schutz", Haken bei "Gesperrt" entfernen. Darauf achten, dass in den Spalten D:O der gleiche Haken gesetzt ist. Bei Bedarf setzt du den Haken bei C1:C10 und P1:P10 wieder.
    Dann Menu "Überprüfen", "Schutz", "Blatt schützen", Haken bei "Auswählen gesperrte Zellen" nicht setzen, bei "Entsperrte Zellen auswählen" setzen. Je nach Lust und Laune ein Kennwort vergeben oder nicht, "OK" klicken.
    Menu "Datei", "Optionen", "Erweitert", "Bearbeitungsoptionen", Haken bei "Markierung nach Drücken der Eingabetaste verschieben" setzen, Richtung: "Rechts" auswählen.
    Wenn du jetzt in z:B. C20 etwas eingibst und mit Enter oder der Tab-Taste bestätigst, dann landest du automatisch in P20
     
    HKindler, 7. Juni 2023
    #8
    1 Person gefällt das.
  9. Danke @HKindler.

    Der VBA Code funktioniert bei mir aber leider auch nicht wirklich und die andere Möglichkeit ist leider keine Option, da in den Spalten D:O evtl. auch etwas eingetragen werden muss. Ich wollte mir nämlich eigentlich nur den "Grund-VBA-Code" anschauen, damit ich die anderen Zeilen und Spalten dann selber einbauen kann. Denn es soll am Ende eigentlich wie folgt aussehen:

    Wenn jeweils von Zeile 10 bis Zeile 40 in den Spalten C und I etwas eingetragen ist, dann gehe zu Spalte P in der entsprechenden Zeile und wenn in den Spalten D bis H und J und K etwas steht, dann gehe zu Spalte M.

    Mein bisheriger VBA Code für Worksheet_Change lautet:
    Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("K1")) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    If Target.Value = "anderer Reisegrund" Then Target.Offset(1, 0) = "Bitte ausfüllen"
    If Target.Value = "Inspection" Or Target.Value = "Training" Or Target.Value = "ISM/ISPS/MLC int. Audit" Or Target.Value = "Dry Dock" Then Target.Offset(1, 0) = " "

    End Sub

    Dieser Code funktioniert super und muss auch bleiben.

    Normalerweise müsste ich doch eigentlich "nur" einen von Euren Codes unter meinem Code einfügen, was dann doch so aussehen würde:
    (Mein obiger bisheriger Code ohne End Sub)
    und gleich im Anschluss dann z. b.
    If Target.Row < 10 Then Exit Sub
    If Target.Column = 3 And Target.Value <> "" Then
    Cells(Target.Row, 16).Select
    End If
    End Sub

    Oder habe ich hier einen Denkfehler?
     
    Steffi H, 7. Juni 2023
    #9
  10. steve1da Office Guru
    steve1da, 7. Juni 2023
    #10
  11. @steve1da
    Sorry, ja, aber darf ich nicht auch in anderen Foren nach Hilfe suchen? Hier ist mir der Umgangston auch deutlich lieber und bisher habe ich hier meine Lösungen auch eher gefunden. Aber muss ich einen Hinweis geben, wenn ich woanders auch die Frage gestellt habe? Wenn ja, dann gelobe ich für die Zukunft Besserung.
     
    Steffi H, 7. Juni 2023
    #11
  12. steve1da Office Guru
    Regeln
    Punkt 2.3
    Für dich arbeiten halt mehrere Helfer kostenlos, und bekommen nich mit, falls es schon Lösungen gibt. Daher wäre ein gegenseitiges Verlinken schon nett.
     
    steve1da, 7. Juni 2023
    #12
  13. Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle

    @Doming
    Habe Deine Antwort vorhin leider überlesen - wie setze ich eine Haltemarke?
    Meinen bestehenden Code, der auch funktioniert habe ich oben ja schon geteilt.

    @steve1da
    Ok, sorry, habe ich so nicht auf dem Schirm gehabt. Gebe aber eigentlich immer eine Rückmeldung, wenn das Problem gelöst wurde. Entweder von einem freundlichen Helfer oder auch von mir selber. Wie bereits geschrieben, ich gelobe Besserung, sollte ich in Zukunft evtl. noch einmal in einem anderen Forum nach Hilfe suchen (was aber wahrscheinlich eher nicht vorkommen wird, da mir hier bisher meistens am Besten geholfen wurde).
     
    Steffi H, 7. Juni 2023
    #13
  14. Doming
    Doming hat Ahnung
    Hallo Steffi,
    im Code neben die gewünschte Zeile links auf den grauen Streifen klicken, dadurch wird die Zeile markiert und ein Punkt gesetzt. Wenn der Code jetzt durchlaufen wird, stoppt er genau vor der Zeile.
    Mit F5 kannst Du den Code weiterlaufen lassen (bis zum Schluss oder zum erneuten Erreichen eines Haltepunkts).
    Mit F8 kannst Du stattdessen den Code zeilenweise weiterlaufen lassen und Dir z.B. den Wert der einzelnen Elemente anzeigen lassen (Mit der Maus auf das Steuerelement/die Variable gehen).

    @HKindler hast natürlich recht, Exit Sub ist wohl eher suboptimal, >=10 würde mir auch besser gefallen.
    Gruß
    Doming
     
    Doming, 7. Juni 2023
    #14
  15. HKindler
    HKindler Erfahrener User
    Hi,
    Nein, der funktioniert eben nicht super! Wieso? Genau aus dem Grund, für den ich @Doming schon gerügt habe: Ein Exit Sub verhindert zuverlässig, dass der nachfolgende Code jemals ausgeführt wird.

    Bei dir ist das die gleich die erste Zeile
    Code:
    If Intersect(Target, Range("K1")) Is Nothing Then Exit Sub
    Diese sorgt dafür, dass die Routine sofort abgebrochen wird, wenn nicht K1 eine der geänderten Zellen ist. Den Rest kannst du dir ausmalen. Diese Zeile(n) müsste(n) so lauten:
    Code:
    If Not Intersect(Target, Range("K1")) Is Nothing Then
        'Code für diesen Fall
    End If
    Analog musst du für alle weiteren Exit Sub vorgehen.

    Thema Haltepunkt: Im Editor auf die graue senkrechte Spalte links vom Code klicken, und zwar auf Höhe der Zeile, die dich interessiert. Also in deinem Fall am Besten auf Höhe der ersten If-Zeile. Da erscheint dann ein rotbrauner Kreis. Wenn du jetzt in einer Zelle des Blattes etwas änderst, dann kommt automatisch der VBA-Editor im Debug-Modus nach vorne und die Zeile mit dem Haltepunkt ist gelb hinterlegt. Mit F8 kannst du nun die Zeilen einzeln abarbeiten.

    Man kann auch mehrere Haltepunkt setzen. Mit einem Klick auf einen vorhanden Haltepunkt wird dieser wieder ausgeschaltet.
     
    HKindler, 7. Juni 2023
    #15
Thema:

Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle

Die Seite wird geladen...
  1. Wenn eine Zelle größer Null, dann gehe zu einer anderen Zelle - Similar Threads - Zelle größer Null

  2. Formel auf andere Zellen unterschiedlicher Größe anwenden

    in Microsoft Excel Hilfe
    Formel auf andere Zellen unterschiedlicher Größe anwenden: Hallo zusammen, ich habe eine Formel gebastelt, die wie angehängt in der Beispiel-Excel zu sehen ist, funktioniert. Kann ich die Formel so vereinfachen, dass ich nicht 3x die angepasste Formel...
  3. Spalte einblenden wenn in Zelle Wert größer Null

    in Microsoft Excel Hilfe
    Spalte einblenden wenn in Zelle Wert größer Null: Hallo zusammen, ich brauche mal wieder Eure Hilfe!!!!!! Ich habe wieder eine Aufgabe und hierzu so meine Vorstellung, ob es umsetzbar ist, weiß ich nicht. Ich versuche es mal verständlich zu...
  4. Überprüfen, ob eine Zelle Text enthält (Groß-/Kleinschreibung wird nicht berücksichtigt)

    in Microsoft Excel Tutorials
    Überprüfen, ob eine Zelle Text enthält (Groß-/Kleinschreibung wird nicht berücksichtigt): Überprüfen, ob eine Zelle Text enthält (Groß-/Kleinschreibung wird nicht berücksichtigt) Excel für Microsoft 365 Excel 2019 Excel 2016 Excel 2013 Excel 2010...
  5. Überprüfen, ob eine Zelle Text enthält (Groß-/Kleinschreibung wird beachtet)

    in Microsoft Excel Tutorials
    Überprüfen, ob eine Zelle Text enthält (Groß-/Kleinschreibung wird beachtet): Überprüfen, ob eine Zelle Text enthält (Groß-/Kleinschreibung wird beachtet) Excel für Microsoft 365 Excel für Microsoft 365 für Mac Excel 2019 Excel 2016 Excel...
  6. Für diese Aktion müssen alle verbunden Zellen dieselbe Größe haben.

    in Microsoft Excel Hilfe
    Für diese Aktion müssen alle verbunden Zellen dieselbe Größe haben.: Hallo miteinander, ich muss für verschiedene Abteilungen Datenstammblätter erstellen, darauf sind Jahreszahlen der einzelnen Abteilungen aufgelistet. Die Zahlen bekomme ich aus einer Statistik...
  7. Ausdruck einer Seite wenn in Tabelle eine Zelle nicht leer oder größer null ist

    in Microsoft Excel Hilfe
    Ausdruck einer Seite wenn in Tabelle eine Zelle nicht leer oder größer null ist: Hallo zusammen, mein Problem ist folgendes: Ich habe eine Excel-Datei mit zwei Tabellenblättern. Im ersten Tabellenblatt "Grunddaten" ist die Tabelle mit der Spalte D die ausgewertet...
  8. Größe des Kombinationsfeldes an Zelle anpassen?

    in Microsoft Excel Hilfe
    Größe des Kombinationsfeldes an Zelle anpassen?: Hallo, ich habe ein kleines Problem! Ich möchte gerne die Größe eines Kombinationsfeldes automatisch an die Zellgröße anpassen, so dass es nicht übersteht und in die anliegenden Zellen...
  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