Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature currently requires accessing the site using the built-in Safari browser.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Diskutiere VBA-Excel Variable in for-schleife hochzählen im Microsoft Office Suite Forum im Bereich Office-Produkte; Hallo
Ich stehe gerade vollkommen auf dem Schlauch!!!
Ich möchte in einer for schleife meine Variable hochzählen um die Definition meiner...
#1
H
hahahaha
Bekanntes Mitglied
Themenersteller
Dabei seit
27.04.2005
Beiträge
559
Reaktionspunkte
0
Ort
überall und nirgendwo
Hallo
Ich stehe gerade vollkommen auf dem Schlauch!!!
Ich möchte in einer for schleife meine Variable hochzählen um die Definition meiner Variablen zu erleichtern.
Der Ausgangspunkt ist, Ich habe die Variablen KM_1 bis KM_1000, welche folgendermaßen definiert werden sollen KM_1=cells(1,1).value, km_2=cells(2,1).value usw.
Jetzt habe ich gedacht ich lasse das ganz schnell durch eine Schleife laufen und bin fertig, aber ich schaff es irgendwie nicht.
die schleife sollte vom Sinn her so aussehen:
Code:
dim int as integer
dim zeile as integer
for int = 1 to 1000
KM_int = cells(zeile, 1).value
zeile = zeile + 1
next
Ich hoffe mal ich konnte mein Problem verständlich rüberbringen und irgendjemand hilft mir vom Schlauch runter.
#2
M
Matjes
Bekanntes Mitglied
Dabei seit
22.08.2001
Beiträge
2.308
Reaktionspunkte
0
Hallo Thekensau,
dann versuchs mal so. Ergänzung und Kommentar im Makro.
Gruß Matjes
Code:
Option Explicit
'zwingt dich dazu alle Variablen zu definieren mittels DIM-Anweisung
Sub TestMeineVariablen()
Dim my_int As Integer-> int als Variablename geht nicht !!
Dim zeile As Integer-> hier wird zeile mit 0 vorbesetzt
Dim KM_int As Integer
For my_int = 1 To 1000
zeile = zeile + 1->kleinste Zeilenangabe ist 1
KM_int = Cells(zeile, 1).Value
->... kier kann man mit KM_int etwas anstellen
Next
End Sub
#3
H
hahahaha
Bekanntes Mitglied
Themenersteller
Dabei seit
27.04.2005
Beiträge
559
Reaktionspunkte
0
Ort
überall und nirgendwo
Danke erstmal.
Aber ich glaube ich habe nicht so richtig rübergebracht was ich vorhabe.
Ich kopiere mal den Code und versuche darin zu erklären was ich gerne machen würde.
Code:
Option Explicit
Sub TestMeineVariablen()
Dim my_int As Integer
Dim zeile As Integer
Dim KM_1 As String
Dim KM_2 As String
Dim KM_3 As String
Dim KM_4 As String
' usw bis Dim KM_1000 As String
For my_int = 1 To 1000
zeile = zeile + 1->kleinste Zeilenangabe ist 1
' jetzt soll bei jedem durchlauf der Schleife die zeile hochzählen, ist ja gegeben.
' Aber auch meine Variable KM_1 im ersten Durchlauf KM_2 im zweiten Durchlauf bis zu KM_1000 im letzten Durchgang
KM_###hier sollte jetzt my_int mit rein### = Cells(zeile, 1).Value
Next
End Sub
Das Ergebnis sollten dann sein das nachher die Variable KM_1 den Wert der Zelle A1, KM_2 den Wert von A2 bis KM_1000 den Wert von A1000 hat und ich damit im weiteren Verlauf der Prozedur weiterarbeiten kann.
Ich hoffe mal ich konnte jetzt klarer machen, was ich vorhabe.
Ich verzweifel mittlerweile an diesem eigentlich ja recht kleinem Problemchen.
#4
H
hahahaha
Bekanntes Mitglied
Themenersteller
Dabei seit
27.04.2005
Beiträge
559
Reaktionspunkte
0
Ort
überall und nirgendwo
Oh mein Gott, Ich habe wohl zu lange vor dem Ding gehangen!!! :| hoch 3
Man hatte ich ein Brett vor dem Kopf!!!
Natürlich kann man das so machen:
Code:
Sub TestMeineVariablen()
Dim KM_(1000) As String
Dim zeile As Integer
Dim my_int As Integer
For my_int = 1 To 1000
zeile = zeile + 1
KM_(my_int) = Cells(zeile, 1).Value
Next
End Sub
oder geht es noch einfacher???
Trotzdem Vielen Dank
#5
M
Matjes
Bekanntes Mitglied
Dabei seit
22.08.2001
Beiträge
2.308
Reaktionspunkte
0
Hallo Thekensau,
da my_int und zeile gleich sind könnte es so aussehen:
Code:
Sub TestMeineVariablen2()
Dim KM_(1 To 1000) As String, zeile As Integer
For zeile = 1 To 1000
KM_(zeile) = Cells(zeile, 1).Value
Next
End Sub
KM_ hab ich noch von 1 an laufen lassen - Dim KM_(1000) läuft von 0 bis 1000, also 1001 mal