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

Matrix umwandeln in Liste

Matrix umwandeln in Liste
01.09.2017 13:35:23
Andreas
Hallo,
ich bin etwas am verzweifeln.
Ich habe eine Excel-Datei mit einer Matrix die mittels Makro in eine Liste umgewandelt werden soll.
Die Ausgangsdatei ist relativ umfangreich (aktuell ca. 8000 Zeilen) und wird regelmäßig erweitert.
Als Beispiel habe ich eine kleine Datei mit der Ausgangsbasis und dem gewünschten Ziel angehängt.
https://www.herber.de/bbs/user/115934.xlsx
Kann mir jemand helfen?
Gruß
Andreas Wild

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Matrix umwandeln in Liste
01.09.2017 13:50:30
Piet
Hallo Andreas
ich denke ich habe die Aufgabe verstanden, habe dazu eine Rückfrage au den Nullwerten!
Es gibt diese drei ZIP Codes: - Z440007, Z398037, Z04073 - wo nur unter Index 21 ein Wert steht
Alle anderen Daten sind Null. - Sollen die auch aufgelistet werden, oder kann man die überspringen?
mfg Piet
AW: Matrix umwandeln in Liste
01.09.2017 14:12:33
Andreas
Hallo Piet,
erstmal ein dickes Danke, dass du dich mit meinem Problem beschäftigst.
Ja, alle Daten in der Matrix mit einer Null können übersprungen werden. Ist sogar von Vorteil.
Gruß
Andreas
AW: Matrix umwandeln in Liste
01.09.2017 14:04:08
ChrisL
Hi Andreas
Sub t()
Dim WS1 As Worksheet: Set WS1 = Worksheets("Ausgang")
Dim WS2 As Worksheet: Set WS2 = Worksheets("Ziel")
Dim lZ As Long
With WS2
.Rows("2:" & .Cells(Rows.Count, 1).End(xlUp).Row).Delete
lZ = ((WorksheetFunction.CountA(WS1.Rows(1)) - 9) * _
(WS1.Cells(Rows.Count, 1).End(xlUp).Row - 1)) + 1
.Range("A2:I" & lZ).Formula = _
"=INDEX(Ausgang!$A:$I,ROUNDUP((ROW()-1)/(COUNTA(Ausgang!$1:$1)-9),0)+1,COLUMN())"
.Range("J2:J" & lZ).Formula = _
"=MOD(ROW()-2,COUNTA(Ausgang!$1:$1)-9)+1"
.Range("K2:K" & lZ).Formula = _
"=INDEX(Ausgang!$J:$IV,ROUNDUP((ROW()-1)/(COUNTA(Ausgang!$1:$1)-9),0)+1,MOD(ROW()-2" & _
",COUNTA(Ausgang!$1:$1)-9)+1)"
.Range("A2:K" & lZ) = .Range("A2:K" & lZ).Value
End With
End Sub
cu
Chris
Anzeige
AW: Matrix umwandeln in Liste
01.09.2017 14:47:03
Piet
Hallo Andreas
ich sehe gerade das bereits eine Lösung mit Formeln vorliegt, hatte aber auch schon eine Lösung erstellt.
Jetzt kannst du frei entscheiden was du einsetzen willst.
https://www.herber.de/bbs/user/115937.xlsm
mfg Piet
AW: Matrix umwandeln in Liste
01.09.2017 15:02:55
Piet
Nachtrag
mein Makro hat eine Besonderheit bezüglich Nullwerte. Ganz oben gibt es eine Const Anweisung:
Const Nullwert = "Ja" - dort kannman mit Ja/No, Nein das auflisten der Nullwerte abschalten.
mfg Piet
AW: Matrix umwandeln in Liste
01.09.2017 15:24:11
Andreas
Hallo Piet,
danke für deine Hilfe.
Das Ergebnis ist super und die Verarbeitung sehr schnell.
Gruß
Andreas
Anzeige
AW: Danke für die Rückmeldung oWt
01.09.2017 15:30:32
Piet
...

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige