Anzeige
Archiv - Navigation
1888to1892
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

Zeileneintrag aufteilen

Zeileneintrag aufteilen
23.06.2022 08:35:02
Tim
Hallo zusammen,
meine Ausgangssituation ist, dass in meiner Ursprungsdatei es Zeilen gibt, deren Wert in einer bestimmten Zelle >1 ist.
Im zweiten Tabellenblatt möchte ich dann die Zeilen übertragen und wenn der Wert >1, die Ausgangszeile so oft eingefügt wird, wie es der Wert aus der bestimmten Zelle vorgibt.
Aktuell bekomme ich die Anzahl der Zeilen eingefügt, jedoch überträgt er den Inhalt nicht, wie kann man das lösen!?


Sub Test()
Dim WbQ As Workbook, WbZ As Workbook
Dim WsQ As Worksheet, WsZ As Worksheet
Dim i As Long, letzte As Long, ImportListe As Long
Set WbQ = ThisWorkbook
Set WsQ = WbQ.Worksheets(1)
Set WsZ = WbQ.Worksheets(2)
letzte = WsQ.Cells(WsQ.Rows.Count, 1).End(xlUp).Row
ImportListe = WsZ.Cells(WsZ.Rows.Count, 1).End(xlUp).Row
For i = 2 To letzte
If WsQ.Cells(i, 4) > 1 Then
WsZ.Cells(ImportListe + 1, 1) = WsQ.Cells(i, 1).Value
WsZ.Cells(ImportListe + 1, 2) = WsQ.Cells(i, 2).Value
WsZ.Cells(ImportListe + 1, 3) = WsQ.Cells(i, 3).Value
WsZ.Cells(ImportListe + 1, 4) = WsQ.Cells(i, 4).Value
WsZ.Cells(ImportListe + 1, 5) = WsQ.Cells(i, 5).Value
WsZ.Cells(ImportListe + 1, 6) = WsQ.Cells(i, 6).Value
WsZ.Cells(ImportListe + 1, 7) = WsQ.Cells(i, 7).Value
ImportListe = ImportListe + WsQ.Cells(i, 4).Value
Else
WsZ.Cells(ImportListe + 1, 1) = WsQ.Cells(i, 1).Value
WsZ.Cells(ImportListe + 1, 2) = WsQ.Cells(i, 2).Value
WsZ.Cells(ImportListe + 1, 3) = WsQ.Cells(i, 3).Value
WsZ.Cells(ImportListe + 1, 4) = WsQ.Cells(i, 4).Value
WsZ.Cells(ImportListe + 1, 5) = WsQ.Cells(i, 5).Value
WsZ.Cells(ImportListe + 1, 6) = WsQ.Cells(i, 6).Value
WsZ.Cells(ImportListe + 1, 7) = WsQ.Cells(i, 7).Value
ImportListe = ImportListe + 1
End If
Next
Set WbQ = Nothing: Set WbZ = Nothing: Set WsQ = Nothing
Set WsZ = Nothing
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeileneintrag aufteilen
23.06.2022 09:33:36
UweD
Hallo
versuch es so

Sub Test()
Dim WbQ As Workbook, WbZ As Workbook
Dim WsQ As Worksheet, WsZ As Worksheet
Dim i As Long, letzte As Long, ImportListe As Long
Dim Sp As Integer, Anz As Integer
Set WbQ = ThisWorkbook
Set WsQ = WbQ.Worksheets(1)
Set WsZ = WbQ.Worksheets(2)
Sp = 7 'Anzahl Spalten
letzte = WsQ.Cells(WsQ.Rows.Count, 1).End(xlUp).Row
ImportListe = WsZ.Cells(WsZ.Rows.Count, 1).End(xlUp).Row
For i = 2 To letzte
Anz = WsQ.Cells(i, 4)
WsZ.Cells(ImportListe + 1, 1).Resize(Anz, Sp).Value = WsQ.Cells(i, 1).Resize(1, Sp).Value
ImportListe = ImportListe + Anz
Next
Set WbQ = Nothing: Set WbZ = Nothing: Set WsQ = Nothing
Set WsZ = Nothing
End Sub
LG UweD
Anzeige
AW: Zeileneintrag aufteilen
23.06.2022 09:44:05
ChrisL
Hi
Dito, aber mit Power-Query umgesetzt:
https://www.herber.de/bbs/user/153729.xlsx
- Hilfsspalte: ={1..[Anzahl]}
- in Zeilen expandieren
- danach die Hilfsspalte wieder löschen
cu
Chris

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige