Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1840to1844
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Variablenname mit Schleife hochzählen

Variablenname mit Schleife hochzählen
11.08.2021 11:07:04
Lisa
Hallo zusammen,
ich versuche derzeit mit einer Schleife Variablennamen hochzuzählen, um den in der Variablen gespeicherten Wert in einer verschachtelten Schleife an eine Formel zu übergeben. Die Variablen bekomme ich hochgezählt, allerdings wird nicht der in diesen gespeicherte String z. B. "Januar" an die Formel übergeben, sondern eben z. B. a1.
Mit Google komme ich nicht weiter. Geht mein Vorhaben überhaupt?

Sub Eins()
Dim iCounter, iCounter2 As Integer
Dim a1, a2, srtEins, übergabe As String
a1 = "Januar"
a2 = "Februar"
For iCounter2 = 1 To 2
strEins = "a" & iCounter2
übergabe = strEins
MsgBox (übergabe)
For iCounter = 1 To 2
Range("W2").Formula2R1C1 = "=FILTER(Tabelle24,Tabelle24[Monat]= """ & übergabe & """)"
Next iCounter
Next iCounter2
End Sub
Über Hilfe und Ratschläge bin ich dankbar.
Liebe Grüße
Lisa

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Variablenname mit Schleife hochzählen
11.08.2021 11:10:03
Hajo_Zi
Hallo Lisa,
strEins = Range("a" & iCounter2 )
GrußformelHomepage
AW: Variablenname mit Schleife hochzählen
11.08.2021 11:18:42
Lisa
Hallo Hajo,
dadurch wird der String zu "".
Grüße
Lisa
AW: Variablenname mit Schleife hochzählen
11.08.2021 11:22:41
Hajo_Zi
Hallo Lisa;
dazu kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.
Gruß Hajo
Anzeige
AW: Variablenname mit Schleife hochzählen
11.08.2021 12:42:22
Lisa
Hallo Hajo,
trotzdem Danke :)
Gruß
Lisa
AW: Variablenname mit Schleife hochzählen
11.08.2021 11:13:00
Simon
Hallo Lisa
Du wirst den Integer in einen String umwandeln müssen...
strwert = CStr(intwert)
Gruß
Simon
AW: Variablenname mit Schleife hochzählen
11.08.2021 11:21:23
Lisa
Hallo Simon,
Typenumwandlung da war ja was, ich erinnere mich ganz dunkel an die C und Java Vorlesung aus der Uni.
Ich hab es mal so versucht, jedoch ohne gewünschtes Ergebnis.

Sub Eins()
Dim iCounter, iCounter2 As Integer
Dim a1, a2, srtEins, übergabe, varA, strwert As String
a1 = "Januar"
a2 = "Februar"
For iCounter2 = 1 To 2
strwert = CStr(iCounter2)
strEins = "a" & strwert
MsgBox (strEins)
For iCounter = 1 To 2
Range("W2").Formula2R1C1 = "=FILTER(Tabelle24,Tabelle24[Monat]= """ & strEins & """)"
Next iCounter
Next iCounter2
End Sub
Gruß Lisa
Anzeige
AW: Variablenname mit Schleife hochzählen
11.08.2021 11:22:45
Daniel
Hi
geht schon, aber etwas anders.
was du hier brauchst, sind nicht einzelne Variablen mit Zahl in der Benennung, sondern ein Array, dh ein Datenfeld mit Indexnummer. Diese Indexnummer kann man hochzählen.
Variablennamen selbst sind nicht variabel, diese müssen immer genau so angegeben werden, wie sie deklariert wurden.

Sub Eins()
Dim iCounter as Integer, iCounter2 As Integer
Dim strEins as String, übergabe As String
Dim a(1 to 2) as string
a(1) = "Januar"
a(2) = "Februar"
For iCounter2 = 1 To 2
strEins = a(iCounter2)
...
noch ein Tip: wenn man Variablen deklariert, muss man hinter jeder Variable den Typ angeben, ansonsten wird sie eine Variant-Variable.
das einmal pro Zeile funktioniert nicht, hier bekommt nur die letzte Variable den angegebenen Typ, die davorstehenden werden dann als Variant deklariert.
und noch ein Tip: verwende Option Explicit, damit dir Tipfehler bei Variablenbenennungen wie srtEins/strEins gleich vom Editor aufgezeigt werden.
ohne Option Explicit bekommst du hier keinen Fehler und das Makro funktioniert, liefert aber ggf falsche Ergebnisse, deren Ursache schwer zu finden ist.
Gruß Daniel
Anzeige
AW: Variablenname mit Schleife hochzählen
11.08.2021 11:32:48
Lisa
Hallo Daniel,
das funktioniert!
Vielen Dank für die Tipps und die Hilfe, das mit der Variablen-Deklaration war mir tatsächlich unbekannt.
Liebe Grüße
Lisa

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige