[VBA] Archivieren von Daten jede Woche
#1
Guten Abend zusammen,

Ich habe ein Problem mit meinen Makros. (Muss aber auch gestehen, dass ich keine Erfahrung mit Markos habe, aber irgendwann und irgendwie muss man ja anfangen  Blush )

Zu meinem Problem, ich möchte am Anfang jeder Woche per Button Drücken Daten archivieren. Die zu archivierenden Daten befinden sich einem Sheet (Data) und sollen in ein weiteres Sheet (Archive). Dort sollen sie entsprechend der Kalenderwoche in die entsprechende Spalte eingefügt werden.

Eigenartigerweise klappt das Makro manchmal und kurz danach bekomme ich den Fehler: Run-time error '1004': Application-defined or object defined error


Code:
Sub Archive()

Dim DocWeekNum As Integer

DocWeekNum = Worksheets("PARAM").Cells(2, 2).Value 'Zeile / Spalte = Dokumenten Woche zur Bestimmung der Archiv Spalte

Sheets("Data").Range(Cells(2, 2), Cells(13, 2)).Copy

Sheets("Archive").Cells(2, 2 + DocWeekNum).PasteSpecial Paste:=xlPasteValues


End Sub


Wäre super wenn mir jemand sagen kann was ich falsch mache und helfen kann es zu verbessern!

Danke schon mal,
Monti


.xlsm   Archive Data.xlsm (Größe: 22,84 KB / Downloads: 2)
Top
#2
Hi,

Code läuft bei mir ohne Probleme, wenn ich Makro aus Sheet Data starte. Habe Code mal ergänzt


Code:
Sub Archive()

Dim DocWeekNum As Integer

DocWeekNum = Worksheets("PARAM").Cells(2, 2).Value 'Zeile / Spalte = Dokumenten Woche zur Bestimmung der Archiv Spalte
Worksheets("Data").Activate
Worksheets("Data").Range(Cells(2, 2), Cells(13, 2)).Copy

Sheets("Archive").Cells(2, 2 + DocWeekNum).PasteSpecial Paste:=xlPasteValues


End Sub
Mit freundlichen Grüßen  :)
Michael
[-] Folgende(r) 1 Nutzer sagt Danke an Zwergel für diesen Beitrag:
  • Monti
Top
#3
Danke für die schnelle Hilfe!

Sollte man noch Application.CutCopyMode = False anhängen oder hat das weder positive noch negative auswirkungen?

Beste Grüße,
Monti
Top
#4
Wäre gut einzufügen.
Mit freundlichen Grüßen  :)
Michael
Top
#5
Nochmals danke! :)
Top
#6
Das Löschen aus der Zwischenablsge sollte man generell in den Code einbauen, sonst kann es bei häufigen Kopiervorgängen grosser Mengen zu Fehlermeldungen kommen, z.B. zu wenig Speicher.
Mit freundlichen Grüßen  :)
Michael
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste