ich habe eine Schleife, die nie aufhören soll zu arbeiten, außer wenn ein speziellen Ereignis eintreten sollte! Das einzige Probem: Wie drücke ich unendlich aus?
also:
For i = 1 to [und hier soll unendlich stehen!]
Wäre für Vorschläge sehr dankbar!
ich habe eine Schleife, die nie aufhören soll zu arbeiten, außer wenn ein speziellen Ereignis eintreten sollte! Das einzige Probem: Wie drücke ich unendlich aus?
also:
For i = 1 to [und hier soll unendlich stehen!]
Wäre für Vorschläge sehr dankbar!
in einer For/Next-Schleife kann man das erreichen, in dem man schreibt:
For i = 1 to 2
If Ereignis = Falsch Then i = 0
Next i
Besser und eleganter ist die Verwendung dafür geschaffener Schleifenkonstrukte, wie:
While/Wend und etwa Do/Loop. Schau dazu in der Hilfe nach.
Schönen 2. Advent wünscht Mario
den Sinn sehe ich zwar auch nicht aber wird die Schleife nicht durch eine Zuweisung innerhalb der Schleife unendlich, so in der Art:
If i = 32767 then i = 1
Gruß
Peter
Um eine unendliche Schleife in Excel VBA zu implementieren, kannst du verschiedene Ansätze wählen. Hier ist eine einfache Schritt-für-Schritt-Anleitung:
Öffne den VBA-Editor:
ALT + F11
, um den VBA-Editor zu öffnen.Füge ein neues Modul hinzu:
Einfügen > Modul
.Schreibe deine Schleife:
Sub UnendlicheSchleife()
Dim i As Long
i = 1
Do While True
' Deine Logik hier
If Ereignis = False Then
i = 1 ' Oder eine andere Logik
End If
Loop
End Sub
For
-Schleife mit einer unendlichen Bedingung:Sub UnendlicheForSchleife()
For i = 1 To 2
If Ereignis = False Then
i = 0 ' Setze i zurück, um die Schleife unendlich zu machen
End If
Next i
End Sub
Problem: Die Schleife läuft nicht unendlich.
Problem: Excel reagiert nicht mehr.
DoEvents
, um Excel zu ermöglichen, zwischen den Schleifen zu reagieren:Do While True
' Deine Logik
DoEvents
Loop
Es gibt verschiedene Möglichkeiten, unendliche Schleifen in Excel VBA zu implementieren:
While/Wend-Schleife:
Sub WhileSchleife()
Dim i As Long
i = 1
While True
' Deine Logik hier
If Ereignis = False Then
i = 1
End If
Wend
End Sub
For-Next-Schleife:
For
-Schleife so anpassen, dass sie unendlich läuft.Verwendung von Application.OnTime
:
Hier sind einige praktische Beispiele für unendliche Schleifen in Excel VBA:
Einfache Zähler-Schleife:
Sub Zähler()
Dim i As Long
i = 1
Do While True
Debug.Print i
i = i + 1
If i > 100 Then i = 1 ' Zurücksetzen nach 100
Loop
End Sub
Überwachung eines Ereignisses:
Sub EreignisÜberwachung()
Do While True
If Range("A1").Value = "Stop" Then Exit Do
' Weitere Logik
DoEvents
Loop
End Sub
DoEvents
, um sicherzustellen, dass Excel auch bei unendlichen Schleifen reagiert.Debug.Print
, um den Fortschritt deiner Schleife zu verfolgen, ohne die GUI zu blockieren.1. Ist Excel unendlich? Excel hat Grenzen, insbesondere bei der Anzahl der Zeilen und Spalten. Eine unendliche Schleife kann jedoch in VBA programmiert werden.
2. Was ist eine unendliche Schleife in Excel? Eine unendliche Schleife ist eine Schleife, die ohne festgelegte Bedingung fortlaufend ausgeführt wird, bis eine externe Bedingung eintritt oder das Programm manuell gestoppt wird.
3. Wie kann ich eine unendliche Schleife sicher beenden? Implementiere eine Bedingung in deiner Schleife, die es ermöglicht, die Schleife unter bestimmten Umständen zu verlassen, z.B. durch Benutzerinteraktion oder eine bestimmte Zelländerung.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen