Office: IF Then Els End If Problem

Helfe beim Thema IF Then Els End If Problem in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Dieses Problem blockiert mich schon seit Tagen immer wieder. Bisher probiere ich solange bis irgendwas passt ohne es zu verstehen. In meiner Logik... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von andysmith, 24. September 2009.

  1. andysmith Erfahrener User

    IF Then Els End If Problem


    Dieses Problem blockiert mich schon seit Tagen immer wieder. Bisher probiere ich solange bis irgendwas passt ohne es zu verstehen. In meiner Logik dachte ich bisher, was ich öffne muss auch geschlossen werden. Oder denke ich da falsch??

    folgendes Problem derzeit:

    Code:
    If leer = geh2 Then 'wenn Montage Spalte 1 voll dann nehme Spalte 2
        If geh = 1 Then mont2 = mont + 1
        Else
         If geh = 2 Then mont1 = mont + 1
         End If
        End If
    Else ' wenn Spalte nicht voll dann nehme Ursprungswert
       If geh = 1 Then mont2 = mont
       Else
        If geh = 2 Then mont1 = mont
        Else
        End If
       End If
    End If
    dieses Problem habe ich selbst gelöst!! bei Else Anweisungen darf hinter Then nichts stehen sondern muss eine Zeile runter


    Hier kommt prinzipiell am zum ersten if bezogenen else die Mitteilung das es kein If gibt. Warum???

    Desweiteren stellt sich mir bezogen auf dieses öffnen schliessen die Frage, wie verhät sich das Thema wenn man via "exit For" "gosub" und "goto" springt.... Trotzdem schliessen oder beenden diese Anweisungen das automatisch??

    Bsp:
    Code:
    If Paten.Worksheets("Lfde LUV-Aufträge").Range("N" & I) = "1" Then
     geh1 = 67
     geh2 = 184
     geh = 2
    GoTo weiter


    Vielen Dank in jedemfall!!!
     
    andysmith, 24. September 2009
    #1
  2. Exl121150 Erfahrener User
    Hallo AndySmith,

    wie der Name VBA schon andeutet, hat das Ganze mit der Programmiersprache BASIC zu tun. Diese wurde Anfang der 1970er-Jahre geboren.
    Damals war sie eine Sprache, die keine strukturierten Anweisungen kannte (FORTRAN-ähnlich). Man musste viele GOTO-Anweisungen einsetzen. Die Folge war der gefürchtete Spaghetti-Code - ein unentwirrbares Geflecht von Anweisungsabfolgen.
    Darüber hinaus war BASIC grundsätzlich zeilenorientiert: In jede Zeile schrieb man ganau 1 Statement (Anweisung); notfalls konnte man eine Fortsetzungszeile festlegen.
    Damals gab es auch nur ein einzeiliges IF-Statement:
    IF Bedingung THEN Anweisung1 ELSE Anweisung2
    wie zB: IF A=3 THEN GOTO 3687 ELSE B=3*A-10
    Man beachte dabei, dass nach dem 'THEN'-Schlüsselwort noch weiterer Anweisungtext in derselben Zeile folgt.
    Anfang der 1990er-Jahre wurden mit der Verbreitung von Windows eine Reihe von Programmiersprache um den Zusatz "VISUAL" aufgemotzt. So entstand VISUAL BASIC.
    Dabei wurden eine Reihe von Anweisungen um strukturierte Programmelement ergänzt (wie sie von ALGOL, PASCAL etc. bekannt waren). So entstand auch in VB das mehrzeilige IF-Statement:
    IF Bedingung1 THEN
      Anweisungen1
    ELSEIF Bedingung2 THEN
      Anweisungen2
    ELSE
      Anweisungen3
    END IF

    Man beachte, dass in dieser Gestalt nach dem Schlüsselwort 'THEN' in derselben Zeile außer Kommentar nichts mehr folgen darf.

    Es gibt also in VBA 2 verschiedene IF-Statements. Was man beachten muss, dass sie der VBA-Compiler ohne Protest auseinander hält, habe ich bereits erwähnt. Nun zu Deinem 1. IF-Beispiel:
    Code:
    If leer = geh2 Then 'wenn Montage Spalte 1 voll dann nehme Spalte 2 
        If geh = 1 Then mont2 = mont + 1 
        Else 
         If geh = 2 Then mont1 = mont + 1 
         End If 
        End If 
    Else ' wenn Spalte nicht voll dann nehme Ursprungswert 
       If geh = 1 Then mont2 = mont 
       Else 
        If geh = 2 Then mont1 = mont 
        Else 
        End If 
       End If 
    End If
    Das äußere IF-Statement ist mehrzeilig und wurde syntaktisch korrekt konstruiert:
    If leer= geh2 then
    Statement1
    Else
    Statement2
    End If

    Anstelle von Statement1 wurde ein weiteres IF-Statement verschachtelt; ebenso für Statement2. Das wäre im Prinzip noch ok. Nur hast Du bei den beiden IFs eine Kreuzung zwischen einzeilig und mehrzeilig produziert - und das vergibt Dir der Compiler nicht; korrekt müsste die 1. Schachtelung lauten:
    If geh = 1 Then
    mont2 = mont + 1
    Else
    If geh = 2 Then mont1 = mont + 1
    End If

    Darüber hinaus hast Du eine weitere Schachtelung vorgenommen, was durchaus ok ist, nur hast Du dort wieder diese Kreuzung zwischen einzeilig und mehrzeilig drinnen (fette Passage; ich habe sie auf einzeilig korrigiert).

    Dein 2. Beispiel hat das Kreuzungsproblem aber anders herum: es wurde mit einem mehrzeiligen IF begonnen (hinter dem THEN folgt in derselben Zeile nichts mehr), aber dann Zeilen weiter unten gibt es kein abschließendes END IF, das die dazwischen liegenden Anweisungen zu einem logischen Block bündeln würde.
    If Paten.Worksheets("Lfde LUV-Aufträge").Range("N" & I) = "1" Then
    geh1 = 67
    geh2 = 184
    geh = 2
    GoTo weiter

    Syntaktisch korrekt müsste es zB. lauten:
    If Paten.Worksheets("Lfde LUV-Aufträge").Range("N" & I) = "1" Then
    geh1 = 67
    geh2 = 184
    geh = 2
    GoTo weiter
    END IF
    weiter:

    Du verwendest hier ein GOTO-Statement. Das sollte man nach der Idiologie der strukturierten Programmierung überhaupt nicht verwenden. Die Praktiker sagen jedoch, man kann es ausnahmsweise verwenden, insbesondere dann, wenn (die Lesbarkeit des) Programmtextes wesentlich vereinfacht wird.
    Verwendet man ein GOTO, muss die Marke (in diesem Fall "weiter") irgendwo in demselben SUB- bzw. FUNCTION-Block als Sprungziel aufscheinen am Zeilenanfang, gefolgt von einem Doppelpunkt.
    Dabei gilt die prinzipielle Regel: aus Schleifen (zB. DO... LOOP, WHILE...WEND, FOR ... NEXT) darf man herausspringen, aber niemals hinein (außer man ist sich absolut sicher, was man tut).
    Teile eines mehrzeiligen IF-Statement als Sprungziel zu missbrauchen, ist an und für sich unproblematisch, wenn auch sehr unschön.

    Ich hoffe, ich konnte etwas zur Klärung der offenen Fragen beitragen.
     
    Exl121150, 24. September 2009
    #2
  3. andysmith Erfahrener User
    diese Sache mit der Kreuzung zwischen einzeilig und mehrzeilig verstehe ich absolut nicht.

    Das Problem an der Sache ist nun folgendes. Ich habe die Zeilen so umgebaut, nur jetzt wird mein äußeres else ignoriert und er hüpft über die zweite Abfrage hinweg, was ein Fehler in der Ausgabe wird, da diese Werte dort nicht beachtet werden.

    Code:
    If leer = geh2 Then 'wenn Montage Spalte 1 voll dann nehme Spalte 2
            If geh = 1 Then
            mont2 = mont + 1
            Else
              If geh = 2 Then mont1 = mont + 1
              End If
            End If
    Else ' wenn Spalte nicht voll dann nehme Ursprungswert
       If geh = 1 Then
            mont2 = mont
            Else
              If geh = 2 Then mont1 = mont
              End If
        End If
    End If
    Also der Bereich "' wenn Spalte nicht voll dann nehme "

    Vielleicht kann man mir das nochmal genauer erklären.

    Ansonsten die Beschreibung oben war sehr ausführlich und hat mir zumindest den Teil von früher (meine BASIC Anfänge auf dem Atari) bestätigt.
    THX dafür
     
    andysmith, 25. September 2009
    #3
  4. Exl121150 Erfahrener User

    IF Then Els End If Problem

    Hallo,

    das glaub ich auch, dass Dein äußeres ELSE ignoriert wird; was mich wundert, ist, dass Excel überhaupt etwas tut, es müsste die Compiler-Fehlermeldung "Fehler beim Kompilieren / Else ohne If" zumindest beim 1. Aufruf des Makros in einer Messagebox erscheinen. Dann wartet der Compiler, dass man den Code korrigiert, oder aber dass man die Programmausführung zurücksetzt (=abbricht).

    Du dachtest wahrscheinlich, dass Folgendes Deine Anweisungsstruktur sei (Einrückungen kennzeichnen Anweisungsblöcke):

    Code:
    If leer = geh2 Then 'wenn Montage Spalte 1 voll dann nehme Spalte 2
       If geh = 1 Then
          mont2 = mont + 1
       Else
          If geh = 2 Then mont1 = mont + 1
          End If
       End If
    Else ' wenn Spalte nicht voll dann nehme Ursprungswert
       If geh = 1 Then
          mont2 = mont
       Else
          If geh = 2 Then mont1 = mont
          End If
       End If
    End If
    Das stimmt leider nicht, der VB-Compiler macht in Wahrheit Folgendes daraus:
    Code:
    If leer = geh2 Then 'wenn Montage Spalte 1 voll dann nehme Spalte 2
       If geh = 1 Then
          mont2 = mont + 1
       Else
          If geh = 2 Then mont1 = mont + 1
       End If
    End If
    Else ' wenn Spalte nicht voll dann nehme Ursprungswert
       If geh = 1 Then
          mont2 = mont
       Else
          If geh = 2 Then mont1 = mont
       End If
    End If
    End If
    Wie man sieht, hängt das äußere ELSE kopflos ohne ein dazugehöriges IF in der Luft - daher auch die Compilermeldung.

    Es ist nämlich die 1. Codevariante umzuschreiben in folgende:
    Code:
    If leer = geh2 Then 'wenn Montage Spalte 1 voll dann nehme Spalte 2
       If geh = 1 Then
          mont2 = mont + 1
       Else
          If geh = 2 Then mont1 = mont + 1
       End If
    Else ' wenn Spalte nicht voll dann nehme Ursprungswert
       If geh = 1 Then
          mont2 = mont
       Else
          If geh = 2 Then mont1 = mont
       End If
    End If
    oder aber in folgende:
    Code:
    If leer = geh2 Then 'wenn Montage Spalte 1 voll dann nehme Spalte 2
       If geh = 1 Then
          mont2 = mont + 1
       Else
          If geh = 2 Then
             mont1 = mont + 1
          End If
       End If
    Else ' wenn Spalte nicht voll dann nehme Ursprungswert
       If geh = 1 Then
          mont2 = mont
       Else
          If geh = 2 Then
            mont1 = mont
          End If
       End If
    End If
    Beide letztgenannten Codevarianten lösen zumindest keinen Syntaxfehler aus; ob das dann wirklich der beabsichtigte Code ist, das ist eine andere Geschichte.
    Es gilt stets: Sobald nach dem Schlüsselwort 'THEN' in derselben Programmzeile noch weiterer Anweisungstext steht (außer Kommentar), muss es sich stets um ein einzeiliges IF-Statement handeln.
    Nur dann, wenn nach dem 'THEN' in derselben Zeile nichts mehr folgt, genau dann handelt es sich um ein mehrzeiliges IF.

    Was die Unterschiede zwischen einzeiligem und mehrzeiligem IF-Statement sind, habe ich im vorigen Posting genau dargestellt (blaue Textpassagen).

    VBA ist nach wie vor eine zeilenorientierte Programmiersprache; sie wurde nur im Zuge der Aufrüstung (auf VISUAL bzw. TURBO) um mehrzeilige Konstrukte erweitert. Eine freie Codeverteilung auf die einzelnen Programmzeilen (wie zB. in PASCAL, ALGOL, PL/I, ADA) gibt es nicht.

    Ich glaube, es sind in den obigen Varianten die Problemstellen genügend gut zu sehen.
     
    Exl121150, 25. September 2009
    #4
  5. andysmith Erfahrener User
    Vielen Dank für die Antwort, habe das jetzt verstanden und verwende nunmehr auch teilweise die elseif Funktion die manches einfacher macht.

    Ich allerdings hätte da noch eine andere Frage die ein ähnliches Problem beinhaltet:

    kann man in einer If Then Anweisung ein oder bzw. und einbauen?? Das würde nähmlich folgendes extrem vereinfachen:

    Code:
    If Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "x" Then
         GoTo Ende
      Else
         If Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "X" Then
          GoTo Ende
         Else
         End If
    In diesem Fall wäre meine Vermutung gewesen:

    geht aber nicht.....

    Welchen Denkfehler mache ich??
     
    andysmith, 1. Oktober 2009
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi Andy,

    deine Vermutung ist richtig, so wäre der Code eigentlich korrekt - weshalb er bei dir nicht funktionieren soll kann ich nicht nachvollziehen.

    Dennoch würde im konkreten Fall diese 1 Zeile ausreichend sein:

    Code:
    If UCase(Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I)) = "X" Then GoTo Ende
    
    Mit UCase werden alle Buchstaben in Großbuchstaben umgewandelt, sodass du auf "x" nicht noch prüfen musst.

    Ich würde aber nicht mit einer Sprunganweisung arbeiten, sondern einfach die umgekehrte Bedingung verwenden um dadurch den Code ausführen zu lassen, der nach deiner Sprungmarke steht:

    Code:
    If UCase(Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I)) <> "X" Then
       ' hier der Code der ausgeführt werden soll wenn die Zelle kein "x" oder "X" enthält
    End If
    
    Bis später,
    Karin
     
    Beverly, 1. Oktober 2009
    #6
  7. Exl121150 Erfahrener User
    Hallo,

    genau genommen müsste (falls es nicht ein Flüchtigkeitsfehler ist) die 1. Variante nicht funktionieren. Es fehlt nämlich dort das abschließende "End If".
    Variante 1:
    Code:
    Public Sub Testen1()
      Dim Paten As Workbook
      Dim I As Integer
      
      Set Paten = ActiveWorkbook    'oder eine ähnliche SET-Zuweisung
      I = 2                         'oder eine ähnliche Wertzuweisung
      
      If Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "x" Then
         GoTo Ende
      Else
         If Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "X" Then
            GoTo Ende
         Else
            'Hier sind die alternativen Anweisungen zu platzieren
         End If
      End If
      'Weitere Anweisungen
    Ende:
      'Weitere Anweisungen
    End Sub
    
    Vorheriger Code setzt natürlich voraus, dass es im Arbeitsmappen-Objekt 'Paten' das Arbeitsblatt 'Lfde LUV-Aufträge' gibt, ferner muss die Integervariable I einen Wert größer 0 besitzen.
    Gleichwertig zur Variante1 müsste somit folgende Variante2 sein:
    Code:
    Public Sub Testen2()
      Dim Paten As Workbook
      Dim I As Integer
      
      Set Paten = ActiveWorkbook    'oder eine ähnliche SET-Zuweisung
      I = 2                         'oder eine ähnliche Wertzuweisung
    
      If Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "x" Or _
         Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "X" Then
         GoTo Ende
      Else
         'Hier sind die alternativen Anweisungen zu platzieren
      End If
      'Weitere Anweisungen
    Ende:
      'Weitere Anweisungen
    End Sub
    Hier wurde, auf den Operator "Or" folgend, ein Leerzeichen gefolgt vom Unterstrich-Zeichen eingefügt, was eine Fortsetzungszeile innerhalb einer Anweisung signalisiert.
    Folgende Variante 3 verwendet den 'Like'-Operator, der eine Auswahl aus einer Zeichenliste (eingeschlossen in eckigen Klammern) ermöglicht:
    Code:
    Public Sub Testen3()
      Dim Paten As Workbook
      Dim I As Integer
      
      Set Paten = ActiveWorkbook        'oder eine ähnliche SET-Zuweisung
      I = 2                             'oder eine ähnliche Wertzuweisung
      
      If Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) Like "[Xx]" Then
         GoTo Ende
      Else
         'Hier sind die alternativen Anweisungen zu platzieren
      End If
      'Weitere Anweisungen
    Ende:
      'Weitere Anweisungen
    End Sub
    Die Sprungmarke "Ende:" muss natürlich im selben SUB- oder FUNCTION-Block wie das dazugehörige GOTO-Statement liegen.

    Ein Wort zum Schluss: GOTOs sollte man möglichst vermeiden, also sie nur im äußersten Notfall verwenden.
     
    Exl121150, 1. Oktober 2009
    #7
  8. andysmith Erfahrener User

    IF Then Els End If Problem

    In Variante 2 von "Exl121150" vermute ich das der Unterstrich nur ein Tippfehler ist weil sonst leuchtet der mir nicht ein. Ich vermute mal, das ich anhand dessen mal wieder diese Einzeilig - zweizeilig Sache falsch geschrieben hatte.......(irgendwann klappt das noch :-) )

    Ansonsten gefallen mir Variante 3 von "Exl121150" mit dem like und die Ucase Variante sehr gut und sind wohl gleichermassen effektiv.
    Perfektes Lernen :-)

    THX Euch beiden

    -------------------------

    Der Punkt warum ich "Goto"s verwende ist folgender: die Zeilen oben sind ein Ausschnitt einer Fülle von If Then Else Abfragen zu entweder einer Zelle in dieser "Patenliste" und diesem reell existierenden Blatt ("Lfde LUV-Aufträge") oder und anderen Zellen. Wesentlich daran ist, an dieser Excel Datei kann und darf ich nix ändern, zumal sie nicht von mir verwaltet wird.
    Die Zellen können mehrere Zustände haben (Zeichenketten oder Datum), anhand dessen wiederum relevant ist, ob diese dann überhaupt beachtet werden müssen (goto ende) oder ob es ein Datum ist gosub Unterverzeichnis oder gosub Unterverzeichnis nachdem ich a,b,c mache (Trim Funktion ==> Leerzeichen etc.) sowie möglicherweise auch eine Kombination aus mehreren Zuständen. Allein darin den Überblick über alle IF Then Else Elseif endif (s) zu behalten ist schwierig.

    Es seie denn Ihr habt eine vorteilhaftere Lösung von der ich noch nichts weiss....
     
    andysmith, 1. Oktober 2009
    #8
  9. Exl121150 Erfahrener User
    Hallo,

    der Unterstrich in meiner Variante 2 ist kein Tippfehler. Das Leerzeichen gefolgt vom Unterstrich am Ende dieser Zeile ist notwendig und besagt Folgendes:
    Die vollständige Statement-Zeile würde so ausschauen:
    If Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "x" Or Paten.Worksheets("Lfde LUV-Aufträge").Range("CJ" & I) = "X" Then
    Da diese Zeile auf 2 Zeilen aufgeteilt wurde, muss dies in VBA zwingend mittels Leerzeichen+Unterstrich am Ende der 1. Zeile kenntlich gemacht werden, sonst produziert der Compiler 100%-ig einen Fehler. (Vergleiche dazu meinen Kommentar zur Zeilenorientierung von VBA in vorigen Postings).
     
    Exl121150, 1. Oktober 2009
    #9
  10. Beverly
    Beverly Erfahrener User
    Hi Andy,

    mal generell: es gibt nicht nur die If...Endif Anweisung, sondern für solche Zwecke bietet sich die Select Case...End Select Anweisung an. Damit kannst du auch für jeden Fall einen eigenen Prozedurteil schreiben und dennoch bleibt alles übersichtlich und überschaubar - auf jeden Fall besser als mit vielen Sprunganweisungen, da du dabei ja auch wiederum berücksichtigen musst, dass die Reihenfolge der Sprünge richtig ist, um nicht aus Versehen einen Teil auszuführen der gar nicht relevant ist. In der Select Case Anweisung wird immer nur der Prozedurteil ausgeführt, dessen Bedingung erfüllt ist, die anderen werden übergangen.

    Falls du aber lieber mit If als mit Case arbeitest, gibt es da auch noch die Möglichkeit der Verwendung von If...ElseIf...Endif, welche im Prinzip das selbe wie Case bewirkt - d.h. jeder Teil ist gleichberechtigt neben dem anderen. Ich persönlich finde jedoch Case optisch gesehen übersichtlicher.

    Bis später,
    Karin
     
    Beverly, 1. Oktober 2009
    #10
Thema:

IF Then Els End If Problem

Die Seite wird geladen...
  1. IF Then Els End If Problem - Similar Threads - Then Els End

  2. If-Then-Else...Verständnisfrage zu Kriterium String > Zahl

    in Microsoft Access Hilfe
    If-Then-Else...Verständnisfrage zu Kriterium String > Zahl: Hallo, ich habe eine Funktion erstellt. Diese wird mit Werten gefüttert, generell Zahlen als String und "echte" Strings. Damit ich mit den Zahlen Vergleiche anstellen kann wandele ich diese mit...
  3. IF THEN ELSE mit mehr als 2 Anweisungen nach Prüfung

    in Microsoft Excel Hilfe
    IF THEN ELSE mit mehr als 2 Anweisungen nach Prüfung: Hallo, kann mir bitte jemand weiterhelfen, ich möchte bei folgendem Skript folgende Dinge tun: 1. mindestens 2 Bedingungen zur Prüfung (das sollte mit "And" klappen?) 2. dann auch mehr als 2...
  4. VBA: Mehrere Bedingungen in einer if then else Anweisung

    in Microsoft Excel Hilfe
    VBA: Mehrere Bedingungen in einer if then else Anweisung: Hallo zusammen*mrcool , ich möchte erreichen, dass eine Zeile (im Beispiel, GLSeg1MC) eingeblendet wird, wenn 3 Bedingungen additiv erfüllt sind. Ich habe es erfolglos, wie folgt, versucht: If...
  5. Wie kann hinter "Then" gleich "Else" stehen?

    in Microsoft Excel Hilfe
    Wie kann hinter "Then" gleich "Else" stehen?: Liebe Mituser! Was ist das für eine Struktur? For i = 1 To 40000000 'Test, ob Zahl größer als 10 ist oder durch 8, 5 und 6 ohne Rest teilbar ist If (avarTest(k) > 10) Then Else If...
  6. Kombinationsfeld sperren od. freigeben wenn Bedingungen erfüllt (if then else ...)

    in Microsoft Access Hilfe
    Kombinationsfeld sperren od. freigeben wenn Bedingungen erfüllt (if then else ...): Guten Abend liebe Forumsmitglieder Ich habe ein Kombinationsfeld Namens: "KatFKAuswahl" wo ich eine Liste an Auswahlmöglichkeiten in einem Formular (Namens: frm_Personen) habe. Damit man eine...
  7. "If...Then...Else"-Makroblock

    in Microsoft Access Tutorials
    "If...Then...Else"-Makroblock: "If...Then...Else"-Makroblock Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Mehr... Weniger...
  8. Verwirrung mit IF then else

    in Microsoft Excel Hilfe
    Verwirrung mit IF then else: Hallo liebe Community, ich versuche mir gerade eine Tabelle zu basteln und habe folgendes Problem. Ich habe eine Combo Box erstelllt wo man aus einer Produktpreisliste ein Produkt auswaehlen...
  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