23.09.2021, 08:46
Hallo zusammen,
ich habe leider erst sehr wenig Erfahrung mit VBA, deswegen eine eher primitive Frage, wie ich vermute:
im Anhang ist eine Datei, dass man sich das Problem besser vorstellen kann.
Ich habe eine große Reihe an Artikelnummern. Von denen soll jede einzelne Artikelnummer oben in C2 eingefügt werden. In "material" usw. sind formeln hinterlegt, die anhand dieser Daten ziehen und im Feld "Summe" in C10 erscheinen die Kosten. (vereinfachte darstellung)
Nun möchte ich, dass im Prinzip B16 ausgewählt wird, in C2 eingefügt wird, dann erscheint automatisch unten die Summe, die Summe soll kopiert werden und in C16 eingefügt werden neben den entsprechenden Artikel.
Bis dahin kein Problem. Allerdings soll das ganze ja auch für die Artikel B17 bis B22 getan werden (in Realität sind es mehrere hundert) und entsprechend die Kosten immer neben den entsprechenden Artikel geschrieben werden.
Mein Ansatz ist folgender:
Range("B16:B22").Select
Selection.Copy
Range("C2").Select
ActiveSheet.Paste
Range("C10").Select
Application.CutCopyMode = False
Selection.Copy
Range("C16").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Das Problem ist, dass er immer alle Artikel in der Range kopiert und einfügt, was die ganze Rechnung oben zerstört. Es soll jeder Artikel einzeln oben eingefügt werden (ich vermute ja schleifen usw. jedoch weiß ich die exakte Syntax nicht. Außerdem muss die Summe ja immer neben den entsprechenden Artikel und nicht nur in C16 sondern auch C17 usw.
Danke für eure Hilfe.
ich habe leider erst sehr wenig Erfahrung mit VBA, deswegen eine eher primitive Frage, wie ich vermute:
im Anhang ist eine Datei, dass man sich das Problem besser vorstellen kann.
Ich habe eine große Reihe an Artikelnummern. Von denen soll jede einzelne Artikelnummer oben in C2 eingefügt werden. In "material" usw. sind formeln hinterlegt, die anhand dieser Daten ziehen und im Feld "Summe" in C10 erscheinen die Kosten. (vereinfachte darstellung)
Nun möchte ich, dass im Prinzip B16 ausgewählt wird, in C2 eingefügt wird, dann erscheint automatisch unten die Summe, die Summe soll kopiert werden und in C16 eingefügt werden neben den entsprechenden Artikel.
Bis dahin kein Problem. Allerdings soll das ganze ja auch für die Artikel B17 bis B22 getan werden (in Realität sind es mehrere hundert) und entsprechend die Kosten immer neben den entsprechenden Artikel geschrieben werden.
Mein Ansatz ist folgender:
Range("B16:B22").Select
Selection.Copy
Range("C2").Select
ActiveSheet.Paste
Range("C10").Select
Application.CutCopyMode = False
Selection.Copy
Range("C16").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Das Problem ist, dass er immer alle Artikel in der Range kopiert und einfügt, was die ganze Rechnung oben zerstört. Es soll jeder Artikel einzeln oben eingefügt werden (ich vermute ja schleifen usw. jedoch weiß ich die exakte Syntax nicht. Außerdem muss die Summe ja immer neben den entsprechenden Artikel und nicht nur in C16 sondern auch C17 usw.
Danke für eure Hilfe.