Excel VBA: mehrere Arrays in ein Sheet schreiben

Hallo Forum,

mein Titel ist vlt nicht ganz aussagekräftig, aber ich wusste das nicht anders zu beschreiben.

Ich habe ein dreidimensionales string-Array

vPaar(J,K,L)

wobei

J die Werte 1-6 annehmen kann,
K die Werte 1-2 und
L die Werte 1-45.

Nun möchte ich dieses Array so in eine Tabelle schreiben, dass für jedes J immer nur ein K(1) und ein K(2) Eintrag geschrieben wird, dann ist das nächste J dran, usw…

Beispiel:

vPaar(1,1,1)
vPaar(1,2,1)
vPaar(2,1,1)
vPaar(2,2,1)
vPaar(3,1,1)
vPaar(3,2,1)


vPaar(1,1,2)
vPaar(1,2,2)
vPaar(2,1,2)
vPaar(2,2,2)
vPaar(3,1,2)
vPaar(3,2,2)

Dazu kommt, dass die J’s unterschiedliche Werte bei L haben können (mal 21, mal 45, mal 10)

Ich bin bei dem Aufbau der Schleife dazu schon am verzweifeln, vlt kann mir ja jemand einen Hinweis geben, wie man sowas realisieren könnte.

LG und ein frohes Fest…

Micha

Grüezi Michael

Ich habe ein dreidimensionales string-Array

vPaar(J,K,L)

wobei

J die Werte 1-6 annehmen kann,
K die Werte 1-2 und
L die Werte 1-45.

Nun möchte ich dieses Array so in eine Tabelle schreiben, dass
für jedes J immer nur ein K(1) und ein K(2) Eintrag
geschrieben wird, dann ist das nächste J dran, usw…

Beispiel:

vPaar(1,1,1)
vPaar(1,2,1)
vPaar(2,1,1)
vPaar(2,2,1)
vPaar(3,1,1)
vPaar(3,2,1)


vPaar(1,1,2)
vPaar(1,2,2)
vPaar(2,1,2)
vPaar(2,2,2)
vPaar(3,1,2)
vPaar(3,2,2)

Dazu kommt, dass die J’s unterschiedliche Werte bei L haben
können (mal 21, mal 45, mal 10)

Das solltest Du mal an einem konkreten Beispiel näher erläutern…

Ich bin bei dem Aufbau der Schleife dazu schon am verzweifeln,
vlt kann mir ja jemand einen Hinweis geben, wie man sowas
realisieren könnte.

Im Prizip für jede der drei Dimensionen eine eigene Schleife in einander verschachtelt - das ist alles.

…wo aber besteht nun der Zusammenhang zum schreiben ins Tabellenblatt?

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Hallo Thomas,

Es geht um eine Turnierverwaltung.
In dem Array werden Daten wie folgt durch andere Prozeduren abgelegt:

vPaar(J,K,L)

J sind die einzelnen Gruppen (1- max 6)
K ist SpielerA und SpielerB (1-2)
L sind die Spiele je Gruppe (je Gruppe max. 10 Spieler also max 45 Spiele)

Das Schreiben ins Tabellenblatt soll mir eine Spielliste in laufender Folge erstellen, wobei alle Gruppen gleiche Spielpausen und Spielrythmen haben (ist in dem Algorythmus zur Berechnung der Spielpaarungen auch schon sichergestellt)

Ich habe für die Spielliste ein Range dimensioniert
Public arrSpiele(2) As Range
arrspiele(1) wäre also:
Sheets(„Spielverlauf“).Range(„D3:smiley:272“)
arrspiele(2):
Sheets(„Spielverlauf“).Range(„H3:H272“)

Hier will ich jetzt mit
arrspiele(1)(1).value = vPaar(J,1,L)
arrspiele(2)(1).value = vPaar(J,2,L)

die Spiele der Reihe nach reinschreiben…

Weia, viel Text, ich hoffe das ist verständlicher jetzt

lg Micha