Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1820to1824
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
Copy Paste in Schleife
16.03.2021 17:44:22
Mario
Hallo liebe Excel Community,
seit mehreren Jahren finde ich hier Lösungen für meine Excel Probleme, aber bei diesem, wahrscheinlich einfachen Thema, finde ich nicht die richtigen Suchbegriffe... daher frage ich jetzt mal persönlich nach :)
Also es geht darum in einer Tabelle mit 3 Spalten nach jedem neuen Datum die vorherigen Einträge zu kopieren, neue Zeilen einzufügen und dann das Datum zu aktualisieren.
Die Rohtabelle sieht so aus:
Name Anzahl Datum
Hans 5 01.02.2020
Simone 10 05.04.2020
Stefan 6 07.04.2020
Brigitte 3 01.05.2020
Nach der Aktion muss die Tabelle wie folgt aussehen
Name Anzahl Datum
Hans 5 01.02.2020
Hans 5 05.04.2020
Simone 10 05.04.2020
Hans 5 07.04.2020
Simone 10 07.04.2020
Stefan 6 07.04.2020
Hans 5 01.05.2020
Simone 10 01.05.2020
Stefan 6 01.05.2020
Brigitte 3 01.05.2020
Ich weiss, das macht auf den ersten Blick keinen Sinn, aber ich muss die Daten in diese Form bringen, damit ich Daten in eine Datenbank importieren kann. Es soll ein Portfolio erstellt werden mit historischen Bestandsverläufen.
Am besten wäre es, wenn auch noch addiert werden könnte:
Wenn also Hans nochmal mehr im Einheiten im Bestand hat:
Die Rohtabelle sähe so aus:
Name Anzahl Datum
Hans 5 01.02.2020
Simone 10 05.04.2020
Stefan 6 07.04.2020
Hans 5 08.04.2020
Brigitte 3 01.05.2020
Nach der Aktion muss die Tabelle wie folgt aussehen
Name Anzahl Datum
Hans 5 01.02.2020
Hans 5 05.04.2020
Simone 10 05.04.2020
Hans 5 07.04.2020
Simone 10 07.04.2020
Stefan 6 07.04.2020
Hans 10 08.04.2020
Simone 10 08.04.2020
Stefan 6 08.04.2020
Hans 10 01.05.2020
Simone 10 01.05.2020
Stefan 6 01.05.2020
Brigitte 3 01.05.2020
Jetzt bin ich gespannt, ob das recht einfach zu lösen ist oder ob es kompliziert wird.
Wie auch immer, schon mal vielen Dank für Euren Input!
LG Mario

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Copy Paste in Schleife
16.03.2021 17:46:50
onur
Tolle Beschreibung, aber die (Beispiels-) Datei wäre wirklich hilfreich.

AW: Copy Paste in Schleife
16.03.2021 18:31:48
Daniel
Hi
die von mir erkannte Logik funktioniert so:
der Code geht durch die Liste durch
dabei werden zwei Schritte durchgeführt:
zuerst wird jede Zeile einzeln kopiert
danach werden alle Zeilen von der ersten Zeile bis zur aktuellen Zeile kopiert und unten eingefügt, dabei wird das Datum der zuletzt kopierten Einzelzeile übernommen.
als Code für deine Beispieldatei so:
Sub test()
Dim Zelle As Range
Dim Start As Range
Set Start = Range("A4")
For Each Zelle In Range(Start, Start.End(xlDown))
Zelle.Resize(, 3).Copy
Cells(Rows.Count, 6).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Range(Start, Zelle).Resize(, 3).Copy
Cells(Rows.Count, 6).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Selection.Columns(3).Value = Selection.Columns(3).Cells(1, 1).Offset(-1, 0).Value
Next
End Sub
zur Ausführung die Zellen unterhalb von F3 leeren.
dieser Code funktioniert so nur in der Aktiven Datei.
in deiner Beispieldatei fehlt für den den letzten Eintrag noch der zweite Schritt.
Diesen führt das Marko aber aus.
Gruß Daniel

Anzeige
AW: Copy Paste in Schleife
17.03.2021 10:40:18
Mario
Hallo Daniel,
erstmal vielen Dank für Deinen Code, der in der Beispieldatei funktioniert. Leider in meiner Produktivdatei nicht und ich kann nicht genau sagen, wieso. Daher lade ich nun mal mein Ergebnis hoch.
Ich dachte, ich beschreibe mein Problem mit Hans uns Simone, statt mit den Wertpapierkennummern.
Also es ist eine Inventurdatei für Wertpapiere, um die Historie eines Portfolios nachvollziehen zu können.
Am Tag 1 sind also "diese" Wertpapiere im Portfolio. Am Tag zwei dann "diese" und "jene" Wertpapiere und so weiter und so fort. Deswegen brauche ich auch die Addition, wenn sich der Wertpapierbestand unterjährig positiv verändert.
Eventuell sind in meiner Datei das Datumsformat anders. Die kopierten Zeilen verschieben sich quasi datumsmäßig.
In meiner jetzt verlinkten Inventurdatei habe ich die Fehler farblich markiert und kommentiert.
https://www.herber.de/bbs/user/144880.xlsm
Das Makro sollte auch dabei sein.
Vielen dank für weitere Lösungsansätze!
LG Mario

Anzeige
AW: Copy Paste in Schleife
17.03.2021 20:16:54
Yal
Hallo Mario,
im Prinzip schon aber ...
Es gibt 3 Art von Daten: Stammdaten (hier ISIN und Datum), Bewegungsdaten (Hier irritierenderweise "Bestand") und Bestandsdaten. Letztere ist das Summierung der Bewegungsdaten zu ein bestimmte Zeitpunkt: Startbestand (=Erstzugang) + Zugang bis Zpkt - Abgang bis Zpkt.
Anders gesagt, es macht -es ist nur meine Meinung- wenig Sinn, die Daten zu vermehren, diese müssen nur sinnvoll ausgewertet werden.
Mein Vorschlag:
_ füge über der Liste 2 Zeilen
_ in der erste trage dein gewünschte Auswertungsdatum
_ füge zu den Daten eine zusätzliche Spalte "Auswertung" mit einer Formel, die prüft, ob das Einkaufdatum kleiner gleich als das Auswertungsdatum ist. Es ergibt Wahr/Falsch.
_ mache eine Pivottabelle: Auswertung als Filter auf "Wahr" gestellt, Bestand als Werte. Ev. ISIN als Zeilenüberschrift , muss aber nicht, wenn Du nur die Summe brauchst. ISIN, die doppelt vorkommen werden summiert.
So kannst Du das Auswertungsdatum beliebig anpassen und im Pivottabelle den Bestand zum gegebenen Zeitpunkt sehen. Du muss nur die Pivottabelle aktualisieren. Ohne Code.
Und Du kannst anstatt den "Bestand", die Bewegungen eintragen: Zukauf positiv, Verkauf negativ. Dann könnte man anstatt eine Auswertungsdatum eine "Start" und "Enddatum" verwenden.
VG
Yal

Anzeige
AW: Copy Paste in Schleife
18.03.2021 14:00:13
Mario
Danke Yal,
danke für Deinen Ansatz, leider brauche ich auf Excel Basis keine Auswertung, sondern nur die Auflistung.
Diese Tabelle muss ich dann in eine Software importieren, die durch diese Tabelle das Portfolio erstellt.
Das Portfolio in der Software funktioniert nicht mit Kauf- oder Verkaufstransaktionen, sondern nur mit den Beständen zu den bestimmten Tagen.
Daher benötige ich auch keine Substraktionen sondern nur den Bestand zu diesem speziellen Tag.
Die Rohdaten bekomme ich aus dem Export einer anderen Liste, die mir die aktuellen Bestände liefert, mit den Datums der letzten Transaktion. daher weiss ich, an welchem Tag, welche Position im Depot war und muss da nun nur noch in das Importformat für die Software bekommen.
LG Mario

Anzeige
AW: Copy Paste in Schleife
18.03.2021 13:46:59
Daniel
Hi
nach deiner Beschreibung ist das Ergebnis korrekt.
bei Wertpapieren bin ich raus, bitte wende dich an einen Profi, den du auch korrekt für seine Dienstleistung bezahlst.
Gruß Daniel

106 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige