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

Datensätze nach Anzahl dublizieren

Datensätze nach Anzahl dublizieren
Stefan
Hallo zusammen,
ich hoffe, ich werfe keine Frage auf, die schon mal behandelt wurde. Aber ich weiß nicht so recht, wonach ich suchen könnte. Ich habe folgende Problematik.
Ich habe eine Excel Tabelle mit 264 Datensätzen, die in den Spalten A-H gefüllt sind. Die Spalten A-G sind Produkt-Infos, die Spalte H beinhaltet eine Stückzahl.
Ich möchte nur erreichen, das jeder Datensatz in einer neuen, gemeinsamen Datei genauso oft vorhanden ist, wie in der Anzahl in Spalte H angegeben.
z.B.
Zeile 1: Artikel 1, Farbe 1, Größe 1, etc. und in Spalte H die Anzahl "3"
Zeile 2: Artikel 1, Farbe 2, Größe 1, etc. und in Spalte H die Anzahl "5"
nun soll meine Ausgabe-Datei so aussehen:
Zeile 1: Artikel 1, Farbe 1, Größe 1, etc.
Zeile 2: Artikel 1, Farbe 1, Größe 1, etc.
Zeile 3: Artikel 1, Farbe 1, Größe 1, etc.
Zeile 4: Artikel 1, Farbe 2, Größe 1, etc.
Zeile 5: Artikel 1, Farbe 2, Größe 1, etc.
Zeile 6: Artikel 1, Farbe 2, Größe 1, etc.
Zeile 7: Artikel 1, Farbe 2, Größe 1, etc.
Zeile 8: Artikel 1, Farbe 2, Größe 1, etc.
Hierbei würde es genügen wenn die Spalten A-G berücksichtigt werden, es ist aber auch OK, wenn die Anzahl in jeder Zeile mitausgegeben würde.
Da es sich um 264 verschiedene Datensätze handelt, wäre eine manuelle Umsetzung ziemlich aufwendig. Wenn jemand einen Lösungsansatz für mich hätte, wäre ich dankbar.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Datensätze duplizieren, vervielfachen
18.03.2011 15:57:50
Erich
Hi Stefan,
probier mal

Option Explicit
Sub Vervielfache()
Dim arrQ, arrZ(), lngQ As Long, lngZ As Long
Dim qq As Long, ii As Long, zz As Long, cc As Long
lngQ = Cells(Rows.Count, 8).End(xlUp).Row
arrQ = Cells(1, 1).Resize(lngQ, 8)
lngZ = Application.WorksheetFunction.Sum(Cells(1, 8).Resize(lngQ))
ReDim arrZ(1 To lngZ, 1 To 7)
For qq = 1 To lngQ
For ii = 1 To arrQ(qq, 8)
zz = zz + 1
For cc = 1 To 7
arrZ(zz, cc) = arrQ(qq, cc)
Next cc
Next ii
Next qq
Workbooks.Add xlWBATWorksheet
Cells(1, 1).Resize(lngZ, 7) = arrZ
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Datensätze duplizieren, vervielfachen
18.03.2011 16:23:33
Stefan
Hallo Erich,
vielen Dank für den Code.
bekomme Laufzeitfehler 13, Typen unverträglich in dieser Zeile
For ii = 1 To arrQ(qq, 8)
AW: Datensätze duplizieren, vervielfachen
18.03.2011 16:36:55
Stefan
Wenn ich die Überschriften zeile raus nehme (sorry, hatte ich vergessen zu sagen, dass es die gibt) kommt er zumindest bis zur letzten Zeile. also
Cells(1, 1).Resize(lngZ, 7) = arr
bleibt dann aber dort dann mit:
Laufzeitfehler 1004, Anwendungs oder objektdefinierter fehler
hängen.
Danke für deine Bemühungen!
Datensätze vervielfachen
18.03.2011 17:21:49
Erich
Hi Stefan,
die Überschrift in Zeile 1 kannst du drinlassen, geht mit dem folgenden Code.
Zu dem Laufzeitfehler 1004 - Anwendungs oder objektdefinierter fehler - habe ich eine Vermutung:
Steht dieser Code bei dir im Code der Arbeitsmappe oder deinber Tabelle?
(Stünde der Code in einem allgemeinen, normalen Modul ("Modul1" o.ä.), liefe er wohl durch.)
Dieser Code sollte auch das überstehen:

Option Explicit
Sub Vervielfache()
Dim arrQ, arrZ(), lngQ As Long, lngZ As Long
Dim qq As Long, ii As Long, zz As Long, cc As Long
lngQ = Cells(Rows.Count, 8).End(xlUp).Row
arrQ = Cells(1, 1).Resize(lngQ, 8)
lngZ = WorksheetFunction.Sum(Cells(2, 8).Resize(lngQ - 1)) + 1
arrQ(1, 8) = 1                   ' 1 Überschriftzeile
ReDim arrZ(1 To lngZ, 1 To 7)
For qq = 1 To lngQ
For ii = 1 To arrQ(qq, 8)
zz = zz + 1
For cc = 1 To 7
arrZ(zz, cc) = arrQ(qq, cc)
Next cc
Next ii
Next qq
Workbooks.Add xlWBATWorksheet
ActiveSheet.Cells(1, 1).Resize(lngZ, 7) = arrZ
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Datensätze vervielfachen
18.03.2011 18:58:27
Stefan
Hey!
Danke, hab den Fehler gefunden....
Hatte unter den Datensätzen noch eine Spalte mit ner Summe, die nur in der letzten Spalte gesetzt war..
nach dem entfernen dieser gings!
Vielen, Vielen Dank!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige