Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1252to1256
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

Variablen variabel deklarieren

Variablen variabel deklarieren
MG
Guten Abend,
ich möchte Werte aus einer CSV-Datei einlesen. Kein Problem. Ich möchte diese Werte aber in Variablen speichern und nicht Worksheet.
Es gibt in der CSV-Datei:
statische Kopfdaten
dynamische Positionsdaten - unterscheiden sich in der Häufigkeit
statische Fussdaten
Bei den Positionsdaten bekomme ich die Anzahl Positionen mitgeteilt, die CSV-Datei sieht in _
etwas so aus (im Positionsbereich):

Pos;2   'Anzahl der Positionen
'***Pos 1************************Pos 1
Pos1_Mng;2
Pos1_Bez;Rosenkohl
Pos1_Txt;frisch aus Spanien eingetroffen
Pos1_Prz;10%
Pos1_EPr;2,00 €
Pos1_GPr;3,60 €
'***Pos 2************************Pos 2
Pos2_Mng;5
Pos2_Bez;rote Rosen
Pos2_Txt;langstielig, echt aus Holland oder Südafrika - max. 3 Tage ab Schnittdatum
Pos2_Prz;20%
Pos2_EPr;5,00 €
Pos2_GPr;22,50 €

Die Datensatzbezeichner aus der CSV sollen jetzt meine Variablennamen werden, so dass ich diese einlesen kann. Da ich aber vorher nicht weiß, wieviele Positionen ich bekomme, kann ich jetzt mal prohylaktische 2000 Positionen deklarieren - und weiß immer noch nicht, ob ich für die Zukunft alles abgedeckt habe, oder ich deklariere meine Positionen dynamisch, anhand des mitgelieferten Zählers:
Sub Positionen_festlegen()
Dim pos, i As Long
Dim varMng, varBez, varTxt, varPrz, varEPr, varGPr As String
pos = 27
For i = 1 To pos
varMng = "Pos" & i & "_Mng"
varBez = "Pos" & i & "_Bet"
varTxt = "Pos" & i & "_Txt"
varPrz = "Pos" & i & "_Prz"
varEPr = "Pos" & i & "_EPr"
varGPr = "Pos" & i & "_GPr"
Dim varMng, varBez, varTxt, varPrz, varEPr, varGPr As String 'ich will aber, dass der Inhalt dieser Variablen deklariert wird!
Next
End Sub
So, ich hoffe nun, dass Ihr mich verstanden habt. Ich komme da gerade nicht wirklich weiter, vielleicht kann mir mal jemand auf die Sprünge gelfen. Danke.

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

Betreff
Benutzer
Anzeige
AW: Variablen variabel deklarieren
17.03.2012 22:16:51
Josef

Hallo ?,
ganz klar ist mir nicht was du willst.
Meinst du so?
' **********************************************************************
' Modul: Modul3 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Type Positionen
  Mng() As String
  Bez() As String
  Txt() As String
  Prz() As String
  EPr() As String
  GPr() As String
End Type

Sub Positionen_festlegen()
  Dim lngIndex As Long, lngCount As Long
  Dim pos As Positionen
  
  lngCount = 27
  
  Redim pos.Mng(1 To lngCount)
  Redim pos.Bez(1 To lngCount)
  Redim pos.Txt(1 To lngCount)
  Redim pos.Prz(1 To lngCount)
  Redim pos.EPr(1 To lngCount)
  Redim pos.GPr(1 To lngCount)
  
  For lngIndex = 1 To lngCount
    With pos
      .Mng(lngIndex) = "Pos" & lngIndex & "_Mng"
      .Bez(lngIndex) = "Pos" & lngIndex & "_Bez"
      .Txt(lngIndex) = "Pos" & lngIndex & "_Txt"
      .Prz(lngIndex) = "Pos" & lngIndex & "_Prz"
      .EPr(lngIndex) = "Pos" & lngIndex & "_EPr"
      .GPr(lngIndex) = "Pos" & lngIndex & "_GPr"
    End With
  Next
  
  MsgBox pos.Bez(18)
End Sub



« Gruß Sepp »

Anzeige
AW: Variablen variabel deklarieren
18.03.2012 22:53:33
Michael
Hallo Sepp,
für das, dass Du mich erst nicht verstanden haben wolltest (oder das zumindest geglaubt hast) ist Deine Lösung schon ziemlich nah, an dem, was ich mir vorgestellt habe. Ich habe mir das gerade angeschaut und glaube, dass ich damit weiterkomme.
Herzlichen Dank für die freundliche Unterstützung !
Gruß
Michael

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige