Thema Datum  Von Nutzer Rating
Antwort
02.03.2008 13:45:48 Siegfried
NotSolved
02.03.2008 14:14:15 Holger
NotSolved
02.03.2008 19:01:30 Siegfried
NotSolved
Blau Aw:Aw:Aw: Array-Problem - Variant in StringArray
03.03.2008 11:48:36 Holger
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
03.03.2008 11:48:36
Views:
909
Rating: Antwort:
  Ja
Thema:
Aw:Aw:Aw: Array-Problem - Variant in StringArray
Hallo Siegfried,
wie schon geschrieben: du versuchst, ein einzelnes Element einem Array zuzuordnen. Wenn du nur ein einzelnes Element zurückholen willst, kannst du dieses nur einer einzelnen Variablen, aber keinem Array zuordnen. Einzelnen Stringvariablen ist auch die Zuordnung von Variantvariablen möglich. Einem Stringarray kannst du aber kein Variantarray zuordnen.
Einige Möglichkeiten:
Du ersetzt Dim arrVerb(7) As String weg durch Dim arrVerb() .
Du ersetzt Dim arrVerb(7) As String weg durch Dim arrVerb As String.
Du schreibst arrVerb(i) = strArrayVerben(j), wobei i und j Zahlen innerhalb der Arraygrenzen sein muss.
Gruß
Holger



arrVerb = strArrayVerben kopiert das ganze strArrayVerben nach arrVerb, du brauchst arrVerb nicht einmal zu dimensionieren,
arrVerb(1) = strArrayVerben(1) kopiert nur das erste Element von strArrayVerben ins erste Element von arrVerb, Dimensionierung von arrVerb erforderlich.
Da ich nicht weiß, was alles kopiert werden soll, kann ich keine konkrete Empfehlung geben.
Viel Erfolg
Holger




Siegfried schrieb am 02.03.2008 19:01:30:

Hallo Holger,

ich glaube ich habe meine Problem nicht deutlich gemacht.

Ich habe als erstes eine Array des Typs Variant. Ein Element des ArrayVariant ist eine Stringarray mit 8 Felder(Spalten).

Das Einlesen des VariantArray habe ich wie folgt programmiert und funktioniert auch!

While (intIndexVerben <= intLastRowVerben - intStartLesen)

If (Range(strColZeitform & intIndexVerben).Text = strZeitform) Then
Dim arrVerb(7) As String
arrVerb(0) = Range(strColZeitform & intIndexVerben).Text
arrVerb(1) = Range(strColGerman & intIndexVerben).Text
arrVerb(2) = Range(strColInfinitiv & intIndexVerben).Text
arrVerb(3) = Range(strColTu & intIndexVerben).Text
arrVerb(4) = Range(strColEl & intIndexVerben).Text
arrVerb(5) = Range(strColNos & intIndexVerben).Text
arrVerb(6) = Range(strColVos & intIndexVerben).Text
arrVerb(7) = Range(strColUstedes & intIndexVerben).Text
arrVerben(intIndexVerben - intStartLesen) = arrVerb
intCountVerbs = intCountVerbs + 1
End If
intIndexVerben = intIndexVerben + 1
Wend


Nun stehe ich vor der Herausforderung (Problem) das VariantArray wieder auszulesen.
Dazu habe ich mir gedacht ich nehme ich eine schöne Funktion

------------------------------------

Dim intMaxLines As Integer 'Variablen auf Modulebene
Dim strArrayVerben() As Variant 'Variablen auf Modulebene

Public Sub setValueUebergabe(strArrayVerbs, intSumVerbs)
strArrayVerben = strArrayVerbs ; Zuordnen des VariantArray
intMaxLines = intSumVerbs ; Anzahl StringArrays in VeriantArray


Dim arrVerb(7) As String (das StringArray sollte 8 Felder haben, wenn ich es nicht die Anzahl Felder des Arrays kenne schreibe ich nur die Klammer)

'Auslesen des VeriantArray - würde gerne den 2. StringArray haben. Nur als Beispiel.

arrVerb = strArrayVerben(1) <-- Hier passiert der Fehler
"kein Zuweisung an
Datenfeld möglich"

usfVerben.txtZeitform = strArrayVerben(0)

usfVerben.txtFrage = arrVerb(1)







Holger schrieb am 02.03.2008 14:14:15:

Hallo Siegfried,
du versuchst, ein einzelnes Element einem Array zuzuordnen. Das geht nicht. Entweder das gesamte Array oder einzelne Elemente:
arrVerb = strArrayVerben kopiert das ganze strArrayVerben nach arrVerb, du brauchst arrVerb nicht einmal zu dimensionieren,
arrVerb(1) = strArrayVerben(1) kopiert nur das erste Element von strArrayVerben ins erste Element von arrVerb, Dimensionierung von arrVerb erforderlich.
Da ich nicht weiß, was alles kopiert werden soll, kann ich keine konkrete Empfehlung geben.
Viel Erfolg
Holger

Siegfried schrieb am 02.03.2008 13:45:48:

Ich habe folgendes Problem,
ich lese 6 Spalten in ein StringArray und speichere dieses StringArray
dann in ein VariantArray. Da funktioniert auch ganz gut.

Nun möchte ich aber dieses VariantArray wieder auslesen. Hierbei mag
mich mein VB allerdings nicht.
Ich habe folgende Anweisung

------------------------------------
Dim intMaxLines As Integer
Dim strArrayVerben() As Variant

Public Sub setValueUebergabe(strArrayVerbs, intSumVerbs)
strArrayVerben = strArrayVerbs
intMaxLines = intSumVerbs

Dim arrVerb(7) As String (das StringArray sollte 8 Felder haben)

arrVerb = strArrayVerben(1) <-- Hier passiert der Fehler
"kein Zuweisung an
Datenfeld möglich"

usfVerben.txtZeitform = strArrayVerben(0)

usfVerben.txtFrage = arrVerb(1)

------------------------------------

Kann mir jemand sagen wie ich das VariantArray meine StringArrays
entlocke?

Gruß!
Siegfried

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
02.03.2008 13:45:48 Siegfried
NotSolved
02.03.2008 14:14:15 Holger
NotSolved
02.03.2008 19:01:30 Siegfried
NotSolved
Blau Aw:Aw:Aw: Array-Problem - Variant in StringArray
03.03.2008 11:48:36 Holger
NotSolved