Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Do While Not EOF _Eingriff in Schleife

Do While Not EOF _Eingriff in Schleife
03.03.2016 15:23:41
rocketfox
Hallo ich habe vor kurzem den Hinweis bekommen das ich mein Ziel mit einer
"Do While Not EOF " lösen kann. an dieser stelle nochmals danke Rudi.
nun möchte ich aber wissen wie ich zb in die Schleife eingreifen kann.
also zb an 3 oder 543 Stelle. da die Funktion von selbst abläuft habe ich ja keine handhabe über eine variable(i)
ich möchte aber die funktion bespielsweise an 3 oder 543 aussetzen wie kann ich dies Bewerkstelligen ?
gruß chris

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Do While Not EOF _Eingriff in Schleife
03.03.2016 15:28:58
Rudi
Hallo,
Hallo,
indem du einen Zähler mitlaufen lässt.

do while not eof(1)
n=n+1
select case n
case 3: mach dies
case 543: mach das
case else: mach jenes
end select
loop
Gruß
Rudi

AW: Do While Not EOF _Eingriff in Schleife
03.03.2016 16:28:53
rocketfox
ja so einfach kann es sein vielen dank
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Do While Not EOF: Eingriffe in Schleifen mit VBA


Schritt-für-Schritt-Anleitung

Um in einer Do While Not EOF-Schleife in VBA an bestimmten Stellen eingreifen zu können, folge diesen Schritten:

  1. Zähler deklarieren: Definiere eine Zählervariable vor der Schleife.

    Dim n As Long
    n = 0
  2. Schleife einrichten: Verwende die Do While Not EOF(1)-Struktur.

    Do While Not EOF(1)
  3. Zähler erhöhen: In der Schleife erhöhst du den Zähler bei jeder Iteration.

    n = n + 1
  4. Eingriff an bestimmten Stellen: Verwende eine Select Case-Anweisung, um an den gewünschten Stellen einzugreifen.

    Select Case n
       Case 3
           ' Aktion für den Fall 3
       Case 543
           ' Aktion für den Fall 543
       Case Else
           ' Standardaktion
    End Select
  5. Schleife beenden: Schließe die Schleife mit Loop.

    Loop

Häufige Fehler und Lösungen

  • Fehler: Schleife läuft unendlich.

    • Lösung: Stelle sicher, dass du den Zähler korrekt erhöhst und die EOF-Bedingung richtig überprüfst.
  • Fehler: Zähler wird nicht aktualisiert.

    • Lösung: Überprüfe, ob die Zeile n = n + 1 innerhalb der Schleife platziert ist.

Alternative Methoden

Wenn du andere Ansätze benötigst, um durch eine Datei zu iterieren oder Eingriffe zu steuern, kannst du folgende Methoden ausprobieren:

  • VBA Do Until EOF: Statt Do While Not EOF kannst du Do Until EOF verwenden, um das Ende der Datei zu prüfen.

    Do Until EOF(1)
  • For-Schleife: In manchen Fällen kann eine For-Schleife einfacher sein, wenn du die Anzahl der Iterationen kennst.


Praktische Beispiele

Hier ist ein einfaches Beispiel, das zeigt, wie du in einer Schleife eingreifen kannst:

Sub Beispiel()
    Dim n As Long
    n = 0

    Open "C:\DeinDateipfad\datei.txt" For Input As #1

    Do While Not EOF(1)
        n = n + 1
        Input #1, Zeile ' Lese eine Zeile aus der Datei

        Select Case n
            Case 3
                ' Verarbeitung für die dritte Zeile
            Case 543
                ' Verarbeitung für die 543. Zeile
            Case Else
                ' Standardverarbeitung
        End Select
    Loop

    Close #1
End Sub

Tipps für Profis

  • Verwende Do While Not EOF: Diese Methode ist besonders nützlich, wenn du mit Dateien oder Datenbanken arbeitest.
  • Debugging: Nutze die Debugging-Tools von VBA, um deine Schleifen zu überwachen und sicherzustellen, dass sie wie gewünscht funktionieren.
  • Optimierung: Achte auf die Performance deiner Schleifen, insbesondere bei großen Datenmengen.

FAQ: Häufige Fragen

1. Was bedeutet EOF in VBA? EOF steht für "End of File" und wird verwendet, um das Ende einer Datei zu prüfen. Es ist wichtig, um Schleifen korrekt zu steuern.

2. Wie kann ich eine Schleife in VBA unterbrechen? Du kannst eine Schleife mit der Exit Do-Anweisung oder durch das Erreichen der EOF-Bedingung beenden.

3. Was ist der Unterschied zwischen Do While und Do Until? Do While führt die Schleife aus, solange die Bedingung wahr ist, während Do Until die Schleife ausführt, bis die Bedingung wahr wird.

4. Kann ich in einer Do While Not EOF Schleife mehrere Dateien verarbeiten? Ja, du kannst mehrere Dateien innerhalb einer Schleife verarbeiten, indem du die Datei innerhalb der Schleife öffnest und schließt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige