Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Formel mit Schleife

Forumthread: Formel mit Schleife

Formel mit Schleife
Joseffranz
Hallo,
VBA bringt bei nachfolgenden Code die Fehlermeldung Anweisungsende fehlt. Wenn ich anstelle i eine Zahl einfüge, funktioniert es problemlos.
Was muß ich ändern?
Dim i As Integer
For i = 103 To 205
Tabelle1.Cells(2, i).FormulaLocal = "=SVERWEIS($A2;'DB1'!$A$2:$GV$436;"&i&";FALSCH)"
Next i
vielen Dank und Grüsse
Josef
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Leerzeichen..
10.10.2010 19:43:50
CitizenX
Hallo Josef,
es fehlten die Leerzeichen zwischen dem & i &:
Sheets("Tabelle1").Cells(2, i).FormulaLocal = "=SVERWEIS($A2;'DB1'!$A$2:$GV$436;" & i & ";FALSCH)"
Grüße
Steffen
AW: Leerzeichen..
10.10.2010 20:07:42
Joseffranz
Hallo Steffen,
funktioniert bestens.
Ich dachte bisher dass VBA, wenn erforderlich, Leerzeichen selbst einfügt.
Danke
Josef
Anzeige
AW: Leerzeichen bei &
10.10.2010 22:15:14
Daniel
Hi
jein.
VBA macht das oft, aber nicht immer.
das &-Zeichen wird in VBA noch für andere Zwecke verwendet, z.B. um eine Variable oder eine Zahl ein bestimmten Typ (Long, Double, ...) zuzuweisen.
in welcher Funktion das & verwendet werden soll, definiert der Programmierer, in dem er entweder das & durch Leerzeichen absetzt (Strings verbinden) oder direkt vor den Variablennamen schreibt. (Variablentyp)
daher kann das Leerzeichen in diesem Fall nicht automatisch eingefügt werden.
Gruß, Daniel
Anzeige
AW: Formel mit Schleife
10.10.2010 19:45:13
Tino
Hallo,
mach mal überall noch ein Leerzeichen mit rein bei Deiner Variable.
Tabelle1.Cells(2, i).FormulaLocal = "=SVERWEIS($A2;'DB1'!$A$2:$GV$436;" & i & ";FALSCH)"

Gruß Tino
Anzeige
Anzeige

Infobox / Tutorial

Excel-Schleifen mit Formeln richtig anwenden


Schritt-für-Schritt-Anleitung

  1. VBA Editor öffnen: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  2. Modul hinzufügen: Klicke mit der rechten Maustaste auf "VBAProject (dein Dokument)" und wähle Einfügen > Modul.

  3. Code eingeben: Füge den folgenden Code in das Modul ein:

    Sub FormelMitSchleife()
       Dim i As Integer
       For i = 103 To 205
           Tabelle1.Cells(2, i).FormulaLocal = "=SVERWEIS($A2;'DB1'!$A$2:$GV$436;" & i & ";FALSCH)"
       Next i
    End Sub
  4. Leerzeichen beachten: Achte darauf, dass zwischen dem & und der Variablen i ein Leerzeichen ist, um die Fehlermeldung "Anweisungsende fehlt" zu vermeiden.

  5. Makro ausführen: Schließe den VBA-Editor und führe das Makro über Entwicklertools > Makros aus.


Häufige Fehler und Lösungen

  • Fehlermeldung "Anweisungsende fehlt": Dies tritt auf, wenn Leerzeichen zwischen dem & und der Variablen fehlen. Achte darauf, dass dein Code wie folgt aussieht:

    Tabelle1.Cells(2, i).FormulaLocal = "=SVERWEIS($A2;'DB1'!$A$2:$GV$436;" & i & ";FALSCH)"
  • Ergebnis wird nicht angezeigt: Vergewissere dich, dass die Daten in der 'DB1'-Tabelle korrekt sind und dass der Datenbereich A2:GV436 gültig ist.


Alternative Methoden

Wenn Du keine VBA-Programmierung nutzen möchtest, kannst Du auch Excel-Funktionen verwenden, um ähnliche Ergebnisse zu erzielen. Eine Möglichkeit ist die Verwendung von ARRAYFORMULA in Google Sheets oder das Erstellen dynamischer Arrays in Excel 365.

=SVERWEIS($A2;DB1!$A$2:$GV$436;SPALTE(A1);FALSCH)

Hier kannst Du die SPALTE(A1)-Funktion verwenden, um die Spaltennummer dynamisch zu erhalten.


Praktische Beispiele

  1. Einfaches Beispiel: Setze den SVERWEIS in Zelle B2 ein, um Daten aus einer anderen Tabelle zu ziehen. Wenn Du die Schleife in VBA anwendest, wird dies für mehrere Zellen automatisiert.

  2. Datenüberprüfung: Verwende die Schleife, um sicherzustellen, dass Du für alle relevanten Zellen eine Formel anwendest, z.B. für die Zellen B2 bis B100.


Tipps für Profis

  • Debugging in VBA: Nutze die Debug.Print-Anweisung, um den Wert von i während der Schleife anzuzeigen. So kannst Du überprüfen, ob die Schleifen korrekt durchlaufen werden:

    Debug.Print i
  • Verwende Named Ranges: Anstatt feste Zellreferenzen zu verwenden, kannst Du benannte Bereiche einfügen. Das macht deine Formeln flexibler und leichter zu warten.


FAQ: Häufige Fragen

1. Wie kann ich die Schleife in Excel anpassen, um mehr Zellen zu berücksichtigen? Du kannst die Schleife anpassen, indem Du die Werte in der For i = ... To ...-Anweisung änderst. Zum Beispiel For i = 1 To 300.

2. Gibt es eine Möglichkeit, Schleifen in Excel ohne VBA zu verwenden? Ja, Du kannst Array-Formeln oder dynamische Arrays in Excel verwenden, um ähnliche Ergebnisse zu erzielen, ohne VBA zu benötigen. Experimentiere mit Funktionen wie INDEX, VERGLEICH oder SVERWEIS.

Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18