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

Zeilen (Artikelliste) kopieren und mit Abwandlung einfügen

Zeilen (Artikelliste) kopieren und mit Abwandlung einfügen
11.11.2023 22:27:09
Emil12a
Hallo zusammen,

Ich habe ein Excel-Problem bei dem VBA hoffentlich helfen kann, leider fehlt mir dazu das nötige Wissen. Ich habe vor einiger Zeit schon ganz einfache VBA-Spielereien gebastelt, das ist aber leider viel zu lange her.

Ausgangslage ist eine Excel Artikelliste (5000 Artikel) mit einem Farbcode 0 in einer der Spalten. Weitere Spalten enthalten z.b. die Artikelmaße o.ä. Nun sollen sämtliche Artikel mehrfach dupliziert werden und unterhalb eingefügt werden, dabei soll der Farbcode 0 jedoch gegen einen anderen (z.B. 14c) ausgetauscht werden. Die Farbcodes sind in einem zweiten Tabellenblatt. Das ganze soll wiederholt werden, bis jeder der 5000 Artikel jeweils mit jedem der vorhandenen Farbcodes in der Liste enthalten ist.

Ich hoffe mein Problem ist zu verstehen und jemand kann mir einen Tip geben… Danke vorab!

Grüße, Emil

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen (Artikelliste) kopieren und mit Abwandlung einfügen
12.11.2023 14:35:12
Uduuh
Hallo,
etwas dürftige Beschreibung.
Kann man z.B. so machen:
Sub aaa()

Dim vntArtikel, vntFarben
Dim i As Long, j As Long

Application.ScreenUpdating = False

With Sheets("Artikelliste").Cells(1, 1)
vntArtikel = Intersect(.CurrentRegion, .CurrentRegion.Offset(1))
End With
With Sheets("Farben").Cells(1, 1)
vntFarben = Intersect(.CurrentRegion, .CurrentRegion.Offset(1))
End With

For i = 1 To UBound(vntFarben)
For j = 1 To UBound(vntArtikel)
vntArtikel(j, 2) = vntFarben(i, 1) 'Farbcode aus Farben!A:A nach Artikelliste!B:B
Next j
Sheets("Artikelliste").Cells(1, 1).End(xlUp).Offset(1).Resize(UBound(vntArtikel), UBound(vntArtikel, 2)) = vntArtikel
Next i

End Sub

Gruß aus'm Pott
Udo
Anzeige
AW: Zeilen (Artikelliste) kopieren und mit Abwandlung einfügen
12.11.2023 19:04:51
Emil12a
Hallo Udo,

vielen Dank erstmal - leider funktioniert es nicht wie gewünscht. Zunächst entschuldige ich mich für meine unklare Beschreibung, ich habe daher eine Beispieldatei mit deinem Code eingefügt.

Die Artikelliste enthält z.B. folgende Daten in den Spalten:
Artikelnummer, Farbcode, Höhe, Breite, Länge, etc.
Das Tabellenblatt Farbcodes enthält in Spalte A diverse Farbcodes.

Ausgangsliste:
Artikel: 1234 Farbcode: 0
Artikel: 5678 Farbcode: 0

Farbcodes:
1
2
3
4

Kombinierte Artikelliste/Zielliste:
Artikel 1234 Farbcode 0
Artikel 1234 Farbcode 1
Artikel 1234 Farbcode 2
Artikel 1234 Farbcode 3
Artikel 1234 Farbcode 4
Artikel 5678 Farbcode 0
Artikel 5678 Farbcode 1
Artikel 5678 Farbcode 2
Artikel 5678 Farbcode 3
Artikel 5678 Farbcode 4

Dein Code kombiniert beide Listen, allerdings steht in meiner endgültigen Liste dann lediglich der Artikel mit dem letzten der Farbcodes, ich gehe also davon aus, dass die Farbcodes jedes mal überschrieben werden und die Liste nicht um einen weiteren Farbcode "erweitert" wird.
Anzeige
AW: Zeilen (Artikelliste) kopieren und mit Abwandlung einfügen
12.11.2023 20:47:52
Uduuh
Hallo,
kleiner Fehler meinerseits
ersetze
    Sheets("Artikelliste").Cells(1, 1).End(xlUp).Offset(1).Resize(UBound(vntArtikel), UBound(vntArtikel, 2)) = vntArtikel

durch
    Sheets("Artikelliste").Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(UBound(vntArtikel), UBound(vntArtikel, 2)) = vntArtikel


Gruß aus'm Pott
Udo

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige