Anzeige
Archiv - Navigation
1080to1084
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

Variable mit Schleife befüllen

Variable mit Schleife befüllen
13.06.2009 17:30:49
Mathias
Hallo,
ich möchte mittels For-Next Schleife elf verschiedene Variablen belegen. Die Variablen unterscheiden sich alle nur in der Endung (Bsp.: strTest1, strTest2, strTest3,...).
Hier mein Beispiel
Dim bZähler As Byte
Dim strTest1, strTest2, strTest3, strTest4, _
strTest5, strTest6, strTest7, strTest8, _
strTest9, strTest10, strTest11 As String

For bZähler = 1 To 2
'1. bis 11. Person durchlaufen
'g_strAlternativeText wird nach Auswertung der Alternative befüllt
FillStringFromAlternative frmStart.Controls("cboEmpfaenger" & bZähler)

'Auswertung von g_strAlternativeText an örtliche Variable übergeben
strTest(bZähler) = g_strAlternativeText
Next

Die Auswertung der Alternative klappt wunderbar, deshalb habe ich diese Prozedur und die Deklaration von g_strAlternativeTest hier auch nicht abgebildet. Allerdings kann VBA "strTest(bZähler)" nicht so auswerten, wie ich mir das wünsche. Stattdessen erhalte ich den Fehler: Fehler beim Kompilieren: Sub oder Function nicht definiert.
Ich möchte damit aber gar keine Sub oder Function aufrufen, sondern meine verschiedenen Variablen strTest & bytZähler durchlaufen.
Ich hab das schon auf verschiedenen Weisen probiert, komme aber nie auf ein akzeptables Ergebnis.
Könnt ihr mir helfen?
Gruß
Mathias

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

Betreff
Datum
Anwender
Anzeige
ARRAY-Variable verwenden
13.06.2009 19:14:55
NoNet
Hallo Mathias,
siehe meine Antwort hier : Es ist fast haargenau der gleiche Fall :
https://www.herber.de/forum/messages/1080728.html
Übrigens : Mit Deiner DIM-Anweisung wird nur die letzte Variable als STRING deklariert, alle anderen Variablen als VARIANT, da VBA - anders als andere BASIC-Dialekte - diese Typendeklaration nicht auf alle anderen Variablen der gleichen Befehlszeile übernimmt. In VBA muss der Typ für jede einzelne Variable separat angegeben werden !
Gruß, NoNet
Dank ARRAY Problem gelöst
13.06.2009 21:21:59
Mathias
Hallo NoNet,
zwischenzeitlich habe ich das hinbekommen! Meine Lösung, die auch ein Array zum Gebrauch hat, sieht so aus:
For bZähler = 1 To 2
'1. bis 2. Person durchlaufen
FillStringFromAlternative frmStart.Controls("cboEmpfaenger" & bZähler)
'Auswertung an örtliche Variable übergeben
strEmpfaenger(bZähler) = g_strAlternativeText
Next

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige