Anzeige
Archiv - Navigation
1744to1748
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

Umwandeln 2D-Array in 1D-Array

Umwandeln 2D-Array in 1D-Array
23.03.2020 12:39:10
Stefan
Hallo,
ich suche eine Möglichkeit, ein durch Zuordnung eines Range-Bereiches an einen Variant-Wert (intern) entstandenes zweidimensionales Array
z.B. Variantwert = Range("A4:F4").Value ... intern entsteht Array(1 To 1, 1 To 6)
in ein eindimensionales Array(1 To 6) umzuwandeln OHNE übertragen mittels Schleife.
Funktionen wie Join verlangen ein eindimensionales Array und sind mit obiger Methode leider nicht nutzbar.
LG Stefan
P.S. bleibt gesund

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Umwandeln 2D-Array in 1D-Array
23.03.2020 12:49:25
Nepumuk
Hallo Stefan,
so:
Variantwert = Application.Transpose(Application.Transpose(Range("A4:F4").Value))

Gruß
Nepumuk
AW: Umwandeln 2D-Array in 1D-Array
23.03.2020 12:58:31
Stefan
Hallo Nepumuk,
hatte schon mit Transpose, Redim Preserve rumgebastelt, aber nicht hinbekommen.
Ich danke dir vielmals, so funzt es :-)
Anmerkung
23.03.2020 13:07:45
Rudi
Hallo,
1. Transpose versagt bei mehr al 65536 Elementen.
2. Eine Schleife ist auch nicht langsamer.
Gruß
Rudi
AW: Anmerkung
23.03.2020 13:44:39
Stefan
Hallo Rudi,
auch dir danke für deinen Hinweis.
Ich habe daraufhin mal die Performance für folgendes ermittelt:
1 Mio x durchlaufen HeaderRowRange eines mehrspaltigen ListObject und erstellen eines ";"-getrennten Strings aller Spaltenname
a) zusammensetzen über Zugriff auf ListObject.ListColumn.Name
56 sec
b) über Transpose(Transpose(HeaderRowRange.Value)) und String aus Join
34 sec
c) durchlaufen HeaderRowRange mittels Range (for each r in HeaderRowRange.Cells)
2 Min 49 Sek !!!
d) mittels Zugriff über VariantArray = HeaderRowRange.Value
und zusammensetzen String über Schleife For Each k in VariantArray
!!! 7 Sekunden !!!
Fand ich sehr interessant.
Danke euch beiden
Anzeige

105 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige