Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Anzahl neue Zeilen aus Wert einer Zelle einfügen

Forumthread: Anzahl neue Zeilen aus Wert einer Zelle einfügen

Anzahl neue Zeilen aus Wert einer Zelle einfügen
09.04.2018 01:48:15
Sany
Hallo zusammen. Ich hoffe, ihr könnt mir weiterhelfen. Die Internet-Suche hat mich leider nicht sehr weit gebraucht.
Ich habe eine Tabelle mit vielen Zeilen, wo in der Spalte "J" immer ein Wert (Zeitraum in Tagen, z.B. 75) steht. Jede Zeile, bei der in der Spalte "J" ein Wert über 1 (über 1 Tag) ist, soll die Zeile kopiert und drunter eingefügt werden. In dem Beispiel halt 75 mal, bzw 74, so dass es diese Zeile genau 75 mal existiert.
Im Besten Fall soll dabei die Spalte "F" um 1 (Tag) addiert werden, so dass am Ende 75 Einträge (& Tage) existieren.
Ich komme mit meinem Wissen leider nicht voran und da es sich um tausende Zeilen handelt, hoffe ich auf eine automatisierte Lösung und Eure Hilfe. Ich möchte auswerten, welche Tage genau auffällig sind und da nützt mir der Zeitraum nicht viel.
Bild dazu:
http://www.bilder-upload.eu/show.php?file=651be5-1523222385.png
Besten Dank für Eure Tips im Voraus.
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Anzahl neue Zeilen aus Wert einer Zelle einfügen
09.04.2018 02:31:01
Günther
Moin, das ist gewiss mit VBA lösbar. - Ich habe es eben einmal mit Power Query (und aufsteigendem Datum) gelöst.
AW: Anzahl neue Zeilen aus Wert einer Zelle einfügen
09.04.2018 13:07:36
Werner
Hallo,
teste mal:
Option Explicit
Public Sub Test()
Dim loLetzte As Long, loAnzahl As Long, i As Long
Application.ScreenUpdating = False
With Worksheets("Tabelle1")
loLetzte = .Cells(.Rows.Count, 10).End(xlUp).Row
For i = loLetzte To 2 Step -1
If .Cells(i, 10)  "" Then
If IsNumeric(.Cells(i, 10)) Then
If .Cells(i, 10) > 1 Then
loAnzahl = .Cells(i, 10)
.Range(.Cells(i, 1), .Cells(i, 23)).Copy
.Cells(i + 1, 1).Resize(loAnzahl - 1).Insert shift:=xlDown
.Range(.Cells(i + 1, 1), .Cells(i + loAnzahl - 1, 1)).FormulaLocal = _
"=A" & i & "+1"
.Range(.Cells(i + 1, 1), .Cells(i + loAnzahl - 1, 1)).Value = _
.Range(.Cells(i + 1, 1), .Cells(i + loAnzahl - 1, 1)).Value
End If
End If
End If
Next i
End With
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
Gruß Werner
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige