Office: (Office 365) Variabler Zeilensprung.

Helfe beim Thema Variabler Zeilensprung. in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, kann mir jemand helfen dieses Makro variabel zu machen? "If Not Intersect(Range("e51"), Target) Is Nothing Then Range("g32").Select End If"... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Andre8, 2. März 2021.

  1. Andre8 hat Ahnung

    Variabler Zeilensprung.


    Hallo,
    kann mir jemand helfen dieses Makro variabel zu machen?
    "If Not Intersect(Range("e51"), Target) Is Nothing Then
    Range("g32").Select
    End If"
    das muss variabel werden (Range("e51"), Target)
    Wenn "D13" =10 soll es von E41 zu G32 springen. bei 15 von E46 zu G32 springen und bei 20 von E51 zu g32 springen.
    Die D13 ändert sich nach Liefermenge.
    Mit freundlichen Grüssen
    Andre
     
    Andre8, 2. März 2021
    #1
  2. Exl121150 Erfahrener User
    Hallo,

    Excel-Datei mit Makro liegt bei.
     
    Exl121150, 2. März 2021
    #2
    1 Person gefällt das.
  3. Andre8 hat Ahnung
    Andre8, 2. März 2021
    #3
  4. Andre8 hat Ahnung

    Variabler Zeilensprung.

    Noch eine Frage Wieso funktioniert das rot markiertes Makro nicht? Habe ich was falsch gemacht?
    Select Case Range("D13").Value
    Case 10:
    If Not Intersect(Range("E41"), Target) Is Nothing Then Range("g32").Select
    Case 15:
    If Not Intersect(Range("E46"), Target) Is Nothing Then Range("g32").Select
    Case 20:
    If Not Intersect(Range("E51"), Target) Is Nothing Then Range("g32").Select
    Case 25:
    If Not Intersect(Range("E56"), Target) Is Nothing Then Range("g32").Select
    Case 30:
    If Not Intersect(Range("E56"), Target) Is Nothing Then Range("e70").Select
    Case 30:
    If Not Intersect(Range("E74"), Target) Is Nothing Then Range("g32").Select

    End Select
     
    Andre8, 2. März 2021
    #4
  5. Exl121150 Erfahrener User
    Hallo,

    das ist einfach: Du hast 2x hintereinander "Case 30:" geschrieben - dadurch wird die Verzweigung natürlich bereits beim 1. Case ausgeführt und die Programmausführung kommt gar nie zum 2. Case.
     
    Exl121150, 2. März 2021
    #5
    1 Person gefällt das.
  6. Andre8 hat Ahnung
    Hallo Anton,
    wie kann ich machen wenn ich mehr als 25 prüfen muss "D13 = 30" das es von E56 zu E70 Springt und erst beim Erreichen von E74 zu G32 springt?
    Grüße Andre
     
    Andre8, 2. März 2021
    #6
  7. Exl121150 Erfahrener User
    Hallo,

    Code:
       Select Case Range("D13").Value
         Case 10:
             If Not Intersect(Range("E41"), Target) Is Nothing Then Range("g32").Select
         Case 15:
             If Not Intersect(Range("E46"), Target) Is Nothing Then Range("g32").Select
         Case 20:
             If Not Intersect(Range("E51"), Target) Is Nothing Then Range("g32").Select
         Case 25:
             If Not Intersect(Range("E56"), Target) Is Nothing Then Range("g32").Select
         Case 30:
             If Not Intersect(Range("E56"), Target) Is Nothing Then
                Range("E70").Select
             ElseIf Not Intersect(Range("E74"), Target) Is Nothing Then
                Range("G32").Select
             End If
       End Select
    
     
    Exl121150, 2. März 2021
    #7
    1 Person gefällt das.
  8. Andre8 hat Ahnung

    Variabler Zeilensprung.

    Danke Anton
    werde morgen es ausprobieren.
    Schönen abend noch.
     
    Andre8, 2. März 2021
    #8
  9. Andre8 hat Ahnung
    Hallo Anton,
    das Code funktioniert soweit.
    Ich wollte es erweitern aber es kommt zu einer Fehler Meldung.
    Was mache ich falsch?
     
    Andre8, 3. März 2021
    #9
  10. Exl121150 Erfahrener User
    Hallo André,

    bei der Änderung des Makros hast du die allerletzte Zeile, die aber formal unbedingt nötig ist, entfernt:
    End Sub
    Genau das sagt ja auch die Fehlermeldung aus. Einfach nach dem letzten "End Select" in eine neue Zeile eintippen.
     
    Exl121150, 3. März 2021
    #10
    1 Person gefällt das.
  11. Andre8 hat Ahnung
    Danke Anton das hat funktioniert.
    jetzt wollte ich es für größere Stückzahlen (35,40,45,50) erweitern aber es funktioniert nicht.
    muss es wieder das Code geändert werden?
     

    Anhänge:

    Andre8, 3. März 2021
    #11
  12. Exl121150 Erfahrener User
    Hallo,

    du hast vor der Zeile "Case 35:" das vorhergehende IF-Statement nicht korrekt beendet, indem du kein abschließendes "End If" vorgesehen hast. Das müsste einen Fehler beim Kompilieren auslösen.

    Darüber hinaus sehe ich, dass du unter "Case 30:" und unter "Case 35:" den gleichen VBA-Code stehen hast. Wenn die Code-Gleichheit tatsächlich bestehen bleibt, dann kann man das deutlich vereinfachen, indem man schreibt "Case 30, 35:". Dann braucht man den dazu gehörigen Code natürlich nur 1x hinschreiben, weil er dann sowohl für 30 als auch 35 gilt.

    In der beiliegenden Datei habe ich dir das Makro einfacher handhabbar umprogrammiert, indem ich die Test- und Selektionsbefehle in Unterprogramme verschoben habe.
     
    Exl121150, 3. März 2021
    #12
    1 Person gefällt das.
  13. Andre8 hat Ahnung

    Variabler Zeilensprung.

    Danke Anton
    ich werde es ausprobieren.
     
    Andre8, 3. März 2021
    #13
  14. Andre8 hat Ahnung
    Select Case Range("D13").Value
    Case 10:
    If Not Intersect(Range("E41"), Target) Is Nothing Then Range("g32").Select
    Case 15:
    If Not Intersect(Range("E46"), Target) Is Nothing Then Range("g32").Select
    Case 20:
    If Not Intersect(Range("E51"), Target) Is Nothing Then Range("g32").Select
    Case 25:
    If Not Intersect(Range("E56"), Target) Is Nothing Then Range("g32").Select
    Case 30, 35, 40, 45, 50:
    If Not Intersect(Range("E56"), Target) Is Nothing Then
    Range("E70").Select
    ElseIf Not Intersect(Range("E74, E79, E84, E89, E94"), Target) Is Nothing Then
    Range("G32").Select

    End If
    End Select
    End Sub
    Wie mache ich in diesen Bereich richtig?
     
    Andre8, 3. März 2021
    #14
  15. Exl121150 Erfahrener User
    Hallo André,

    von der Syntax her ist der Code korrekt (es gibt keine Kompilierfehler).

    Was der Code ab dem letzten "Case..." macht, ist Folgendes:
    1) Es wird vorausgesetzt, dass "Target" die Zelle ist, in der eine Änderung stattfand.
    2) Wenn in der Zelle D13 eine der 5 Zahlen (30,35,40,45,50) enthalten ist, dann überprüft der Code, ob Target sich in Zelle E56 befindet:
    2a) Falls das zutrifft, wird Zelle E70 selektiert.
    2b) Falls das nicht zutrifft, wird überprüft, ob Target sich in einer der folgenden 5 Zellen (E74, E79, E84, E89, E94) befindet:
    2c) Falls Letzteres (Punkt 2b) zutrifft, wird Zelle G32 selektiert.
     
    Exl121150, 3. März 2021
    #15
Thema:

Variabler Zeilensprung.

Die Seite wird geladen...
  1. Variabler Zeilensprung. - Similar Threads - Variabler Zeilensprung

  2. Combobox einbinden

    in Microsoft Excel Hilfe
    Combobox einbinden: Hallo, ich bastele an einer Funktion, bei der ich an einer Stelle im Programm eine Combobox aufrufen möchte, die dann mit bestimmten Werten aus einer Tabelle gefüllt ist und dann den gewählten...
  3. VBA:Laufzeitfehler beim Einlesen in Variable

    in Microsoft Excel Hilfe
    VBA:Laufzeitfehler beim Einlesen in Variable: Hallo Excel Freaks, ich habe eine Frage, ein Problem wo ich nicht mehr weiter weis.... In eine Exceldatei kopiere ich mir über Makro auf ein Tabellenblatt von anderen Exceldateien das...
  4. Adressen in eine Zelle bei Übereinstimmung eindeutiger Werte einer anderen Spalte

    in Microsoft Excel Hilfe
    Adressen in eine Zelle bei Übereinstimmung eindeutiger Werte einer anderen Spalte: Hallo zusammen, wer letzteren Thread kennt, hier eine Neuauflage. Problem: Aus Array-Berechnungen (Variablen von Let) ein weiteres Array zu erzeugen, welches für alle eindeutigen Werte aus G die...
  5. Variable Anzahl immer 9er Kombination StellenBerechnung

    in Microsoft Excel Hilfe
    Variable Anzahl immer 9er Kombination StellenBerechnung: Hallo schönen Guten Abend mit Bauchweh, das ich bereits habe bei meiner Nicht weiter kommenden Formel. Folgendes Es lässt sich Schwer beschreiben doch ich versuche es Ich habe in J3 einen Wert...
  6. Makro für variable Anzahl von Datensätzen

    in Microsoft Excel Hilfe
    Makro für variable Anzahl von Datensätzen: Hallo zusammen, ich habe wieder einmal ein kleines Excel-Problem, bei dem Ihr mir sicherlich helfen könnt. Ich habe eine Excel-Liste, das ist ein Export aus einem anderen Programm (siehe...
  7. Variable Länge

    in Microsoft Excel Hilfe
    Variable Länge: Hallo zusammen, ich habe mal eine Frage. In einer Tabelle sind Spalten und Zeilen angegeben. Die Zeilen werden beispielsweise mit A1:H5 angegeben. Nun werden zwei Spalten mit Werten hinzugefügt....
  8. Schuldenplan, Variable Rückzahlung

    in Microsoft Excel Hilfe
    Schuldenplan, Variable Rückzahlung: Erstmal Hallo in die Runde und schönen 2. Advent, Ich habe mal eine Frage und brauche mal ein wenig Schwarm wissen. Ich möchte gerne einen Schuldenzahlungsplan mit mehreren Gläubigern anlegen....
Schlagworte:
  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