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

Bestimmte Zellen in neu hinzugefügter Zeile einfügen

Forumthread: Bestimmte Zellen in neu hinzugefügter Zeile einfügen

Bestimmte Zellen in neu hinzugefügter Zeile einfügen
21.01.2025 09:41:11
Timo74074
Hallo,

ich hoffe auf eure Unterstützung.
Meine VBA Kenntnisse sind leider etwas eingerostet, oder besser gesagt sie stammen aus der Schulzeit die mittlerweile bereits einige Zeit zurück liegt.

Aufgabenbeschreibung:
Mittels einer Excelliste möchte ich die Bestellinformationen aufbereiten, um diese im Warenwirtschaftssystem (WaWi) zu verwenden.
Hierzu muss bei jeder Bestellung eine Zeile hinzugefügt werden, um die Transportkosten hinzuzufügen.

Aktueller Status:
Die Bestellungen werden täglich manuell aus einer CSV-Datei in die Spalten P bis AI eingefügt. ==>iO
Das Programm soll nun den Inhalt der Zellen A2:O2 ab Zeile 5 einfügen, solange wie in Spalte P die Zellen gefüllt sind. ==> funktioniert
Anschließend fügt das Programm immer dann eine neue leere Zeile ein, wenn die Bestellnummer in Spalte Q sich verändert ==> funktioniert

Problem:
Nun sollen die Formeln aus den Zellen A4:O4 in die neu eingefügten Zeilen kopiert werden ==> funktioniert nicht
Ich habe bereits viel experimentiert und eine Lösung im Netz gesucht.
Leider ohne Erfolg.

Daher wäre ich euch sehr verbunden, wenn Ihr eine Idee hättet, wie ich mein Problem lösen könnte.

Programm:
Userbild

Exceldatenblatt:
Userbild
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmte Zellen in neu hinzugefügter Zeile einfügen
21.01.2025 10:26:07
Yal
Hallo Timo,

eine Datei, worauf man etwas basteln kann, wäre hilfreicher als Bilder, die man weder lesen noch verarbeiten kann.
Poste eine Datei, bereinigt von alles, was nicht im Internet zu sehen sein soll, aber trotzdem aussagekräftig. Dann bekommst Du sicher sofort Hilfe.

Ich wurde dazu tendieren, das Problem mit Power Query anstatt VBA ranzugehen. https://excelhero.de/power-query/power-query-ganz-einfach-erklaert

VG
Yal
Anzeige
AW: Bestimmte Zellen in neu hinzugefügter Zeile einfügen
21.01.2025 10:51:54
UweD
Hallo


versuche es mal so...

...

Ws.Rows(Zeile + 1).Insert
Ws.Cells(4, 1).Resize(1, 15).Copy Ws.Cells(Zeile + 1, 1).Resize(1, 15)
...



LG UweD
AW: Bestimmte Zellen in neu hinzugefügter Zeile einfügen
21.01.2025 13:55:05
Timo74074
Hallo Uwe,

danke dir für das Beispiel.
Mit diesem werden die Zellen A4:O4 allerdings in jede darunter liegende Zelle kopiert.
Ziel sollte sein, den Inhalt dieser Zellen nur in die neu hinzugefügten Zeilen zu kopieren.

Hast du dafür ggf. eine Idee?
Anzeige
AW: Bestimmte Zellen in neu hinzugefügter Zeile einfügen
21.01.2025 14:37:10
UweD
Hallo

>>Ziel sollte sein, den Inhalt dieser Zellen nur in die neu hinzugefügten Zeilen zu kopieren.

das ist doch so. Nach dem Einfügen der neuen Zeile, wird genau dort der kopierte Bereich eingefügt

Ich habe in deinem bestehenden Makro genau an der einen Stelle den Code ergänzt.
Wenn du was anderes möchtest, dann lade bitte anstelle eines Bildes eine Musterdatei hoch,
am Besten mit "vorher" und "(händisch) so wie es aussehen soll".


LG UweD
Anzeige
AW: Bestimmte Zellen in neu hinzugefügter Zeile einfügen
21.01.2025 15:04:39
Timo74074
Tut mir leid.
Vielleicht habe ich es nicht korrekt ausgedrückt.

Ich hoffe die Datei hilft weiter:

https://www.herber.de/bbs/user/175003.xlsm


AW: Bestimmte Zellen in neu hinzugefügter Zeile einfügen
21.01.2025 18:05:49
UweD
Hallo

Ich denke, du beziehst dich auf dein Makro "Zeilen_kopieren_Bestellungen_2"

Solche Einfügungen macht man immer von unten nach oben..
Ich hab es mal umgeschrieben.
Es kommt zwar nicht das raus, was du händisch vorgegeben hast, aber ich denke da sind Fehler in deiner Vorgabe

Sub Zeilen_kopieren_Bestellungen_2()

Dim zeile As Long
Dim ws As Worksheet
Dim LzP As Long, LzA As Long

Set ws = Sheets("Verkaufszeilen zum Importieren")
With ws
LzP = .Cells(.Rows.Count, 16).End(xlUp).Row
LzA = .Cells(.Rows.Count, 1).End(xlUp).Row + 1 'erste Freie Zeile in A
Application.Calculation = xlManual 'automatische Berechnung aus
.Range("A3:O3").Copy Range("A" & LzA & ":O" & LzP)

For zeile = LzP + 1 To LzA + 1 Step -1
If ws.Cells(zeile, 17).Value > ws.Cells(zeile - 1, 17).Value Then
ws.Rows(zeile).Insert
ws.Cells(4, 1).Resize(1, 15).Copy ws.Cells(zeile, 1).Resize(1, 15)
End If

Next
Application.Calculation = xlAutomatic 'automatische Berechnung ein

End With

End Sub


LG UweD
Anzeige

Forumthreads zu verwandten Themen

Anzeige