Visual Basic 6 & Excel

Namor93

Reisender
Hi

Ich arbeite zur Zeit an einem VB-Programm für einen Bekannten und habe nun ein Problem.
Das Programm soll beim Programmstart eine (Excel-)Tabelle einlesen und die Werte aus drei Spalten in drei Arrays schreiben.
Nun findet sich per Google zwar viel zum Thema Excel und VB, doch verstehe ich die Codes dahingehend nicht das (so denke ich mir das zumindest) man das ganze in einer Schleife laufen lassen muss um die Werte in ein Array zu packen.

Alle anderen Aspekte des Programms laufen schon (fast) perfekt nur das die Werte halt noch aus drei txt-Dateien eingelesen werden. Deshalb hoffe ich das sich einer der Programmierer hier auf Scharesoft erbarmt mir zu helfen. :)

Grüße,
Namor
 
Ich schau mir das mal an, interessiert mich zufällig grad selber...
E: Komm grad nicht an Office ran, werd aber morgen mir das an der Uni anschaun, falls ich drandenke
 
Zuletzt bearbeitet:
Code:
Sub Read()

Dim i, j, k As Integer
i = 1
j = 1
k = 1

Dim SpalteA(100) As Double
Dim SpalteB(100) As Double
Dim SpalteC(100) As Double

'Solange Spalte 1 (Also Spalte A) noch Werte enthält
'Iteriere von 1 bis 100 (Zeilen) und speichere die Werte
'in SpalteA(Zeile)
While ActiveSheet.Cells(i, 1) <> "" And i <= 100
    SpalteA(i) = Cells(i, 1)
    i = i + 1
Wend

'Analog für SpalteB
While ActiveSheet.Cells(j, 1) <> "" And j <= 100
    SpalteB(j) = Cells(j, 2)
    j = j + 1
Wend

'Und Spalte C
While ActiveSheet.Cells(k, 1) <> "" And k <= 100
    SpalteC(k) = Cells(k, 3)
    k = k + 1
Wend

'Nur zum testen (Gibt den Inhalt von Zelle A1 B2 und C3 aus)
MsgBox (SpalteA(1) & " " & SpalteB(2) & " " & SpalteC(3))

End Sub

Wahrscheinlich nicht die beste Lösung, weil du vorher schon wissen musst, wieviele Daten in den Spalten stehen (In diesem Fall maximal 100)... So wie hier funktioniert das übrigens nur für Double (Zahlen mit Kommastellen) - ich schätze aber mal dass es für deine Bedürfnisse ausreichen sollte und der Code sollte auch verständlich sein...
VBA ist übrigens ne Krankheit...
 
  • Like
Reaktionen: Namor93