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. Formel mit 3 Variablen

    in Microsoft Excel Hilfe
    Formel mit 3 Variablen: Hallo Zusammen Mein Name ist Marc, ich bin neu hier :) Die Welt von Excel ist für mich nicht unbekannt, jedoch bin ich kein Fuchs in diesem Thema. Aktuell arbeite ich an einer Kalkulation und...
  3. Definierter Funktionswert mit Wertebereich für Variable

    in Microsoft Excel Hilfe
    Definierter Funktionswert mit Wertebereich für Variable: Hallo! ich bin auf der Suche nach einer Funktion in Excel, die folgendes Problem löst: Gegeben sei eine Zelle mit der mathematische Funktion y=x²+3. Die mathematische Funktion soll dabei nur in...
  4. [VBA] Daten auf Grund von Variable auf anderes Tabellenblatt kopieren

    in Microsoft Excel Hilfe
    [VBA] Daten auf Grund von Variable auf anderes Tabellenblatt kopieren: Hallo zusammen, vorab großes Lob an das Forum, ich konnte schon einige Dinge sinnvoll für mich nutzen, meine VBA Skills beschränken sich sonst eher auf das Anpassen von aufgezeichneten Makros...
  5. Variable in Pfad zu externem Inhalt (Sharepoint)

    in Microsoft Excel Hilfe
    Variable in Pfad zu externem Inhalt (Sharepoint): Hallo, ich habe eine Excel-Tabelle, welche Daten aus einem externen Bezug holt. Der Pfad sieht so aus:...
  6. Variabler Divisor in Abhängigkeit ausgefüllter Zellen

    in Microsoft Excel Hilfe
    Variabler Divisor in Abhängigkeit ausgefüllter Zellen: Hallo zusammen, ich würde mich freuen wenn mir jemand hierbei helfen könnte. Januar bis Dezember sind in der ersten Zeile von A1 bis L1 eingetragen. Unter A2 bis L2 würde ich einen Eintrag zu...
  7. Hyperlink mit Inhalten aus Inhaltssteuerelement

    in Microsoft Word Hilfe
    Hyperlink mit Inhalten aus Inhaltssteuerelement: Hallo zusammen, in einem Word-Dokument werden über separate Text-Inhaltssteuerelemente Breitengrad (52.xxxx) und Längengrad (8.xxxx) eingegeben. Die Inhalte der Text-Inhaltssteuerelemente möchte...
  8. VBA mit Variable suchen und datum setzen?

    in Microsoft Excel Hilfe
    VBA mit Variable suchen und datum setzen?: Hallo ich sitze vor folgendem Problem. in der Zelle C3 habe ich einen Wert der sich durch ein Makro ändert. Diese Zahl ist auch gleich der Spalte A 9 bis 70. Nun möchte ich ein Makro, dass mir...
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