[VBA]Dynamische Deklaration

Chris B

Mitglied
Einen wunderschönen Freitagmittag

Ich überprüfe die erste Reihe einer .xls(Excel) auf Werte und jedes mal, wenn er Werte findet(wird ein Modul für xls-import in die Datenbank) soll er eine neue Variable anlegen

Visual Basic:
            Dim Rueckgabe
            Dim RowC, ColC, ColCC, ColCE, ColCNN, ColCA
            RowC = xlsWSheet.UsedRange.Rows.Count    'Gesamt Rows -> Reihen
            ColC = xlsWSheet.UsedRange.Columns.Count 'Gesamt Cols -> Spalten
            ColCE = ColC                             'Zähler Ende
            For ColCC = 1 To ColCE Step 1            'Zähle jeden Spaltenkopf durch
                ColCA = xlsWSheet.cells(1, ColCC)
                If ColCA <> "" Then
                    ColCNN = ColCNN + 1             'Wenn nicht leer, Spaltenkopf merken
                    Dim CellHeadLine &"_"&ColCNN 
                End If
            Next

Da die Xls vom Kunden variabel ausfüllbar ist und ich im Prinzip nich weis, wieviel Spalten ich am Ende habe, muss ich versuchen, das ganze so dynamisch wie möglich zu gestalten.

Später sollten die Variablen halt
CellHeadLine_1
CellHeadLine_2
...
heißen.

Ist das in irgendeiner Form möglich?
Ich bedanke mich schonmal für die Antworten

Lg Chris
 
Code:
Dim Array()

'Wenn Spaltenkopf nicht leer
ReDim Array(ColCNN = ColCNN + 1)
Array(ColCNN) = ColCC

So in der Art wäre es n guter ansatz
 
Dafür dass VBA das nicht kennen soll, spuckt die Hilfe aber ne menge aus....

ReDim-Anweisung


Wird auf Prozedurebene verwendet, um Speicherplatz für dynamische Datenfeldvariablen zu reservieren.

Syntax

ReDim [Preserve] VarName(Indizes) [As Typ] [, VarName(Indizes) [As Typ]] . . .

Die Syntax der ReDim-Anweisung besteht aus folgenden Teilen:
.
.
.
 

Neue Beiträge

Zurück