VBA-Excel Variable in for-schleife hochzählen

  • #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
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
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
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
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

Gruß Matjes :)
 
Thema:

VBA-Excel Variable in for-schleife hochzählen

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.965
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben