Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1908to1912
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
ExcelVBA-Daten in Arbeitsmappe kopieren
30.11.2022 14:45:17
Ya
Hallo zusammen,
ich bin dabei eine Mitarbeiterliste mit einigen Features unter anderem einer Urlaubsübersicht zu erstellen.
Damit man diese nicht jedes Jahr neu anlegen muss, habe ich einen CommandButton mit "neues Jahr anlegen erstellt".
Das kopieren und öffnen des neuen Workbooks unter richtigem Namen auf dem Desktop funktioniert auch schon.
Leider habe ich das Problem, dass der Code beim Übertragen des Resturlaubs (Kopieren der Werte von Spalte BA in Spalte AU) die Daten in die ursprünglichen Datei kopiert. Bzw. eine Fehlermeldung angezeigt wird.
Fehlermeldung:
Lauftzeitfehler '1004': Anwendungs- oder objektdefinierter Fehler
Im Debugger wird mir an folgender Stelle angezeigt:

.Range("AU:AU700").PasteSpecial xlPasteValues
Ich gehe davon aus, dass er das Ziel Workbook nicht findet, weiß jedoch nicht wie ich dieses ansprechen kann.

Private Sub CommandButton1_Click()
'Neues Jahr erstellen
Dim wkbName As String, wkb As Workbook
wkbName = Environ$("USERPROFILE") & "\Desktop\" & "Mitarbeiterliste_Urlaubsliste_" & Range("F1").Value & "xlsm"
Dim intLetzte As Long
intLetzte = Cells(5, Columns.Count).End(xlToLeft).Column
ActiveWorkbook.SaveCopyAs wkbName
Set wkb = Workbooks.Open(wkbName) 'Das neue Workbook wird geöffnet
With wkb.Worksheets(1)
.Select
'Urlaubsanspruch übertragen
.Range("BA6:BA700").Copy
.Range("AU:AU700").PasteSpecial xlPasteValues
'alte freigegebene Urlaubstage löschen
Range("BB6:PC700").ClearContents
'Jahr hinzufügen
.Range("E1").Value = Range("E1").Value + 1
Dim currentdate As Date
currentdate = DateAdd("yyyy", 1, Range("E2"))
.Range("E2") = currentdate
End With
End Sub
Die selbe Problematik habe ich beim Löschen des bisherigen Urlaubs (Range("BB6:PC700").ClearContents).
Wenn mir jemand weiterhelfen kann, wäre ich sehr erfreut. Eine Beispieldatei ist ebenfalls angehängt.
Da ich mir alles bezüglich Excel VBA selbst über Foren beigebracht habe, bin ich auch über jeden Tipp dankbar, wie man den Code vereinfachen/ verbessern kann.
Vielen Dank und liebe Grüße
Ya
https://www.herber.de/bbs/user/156476.xlsm

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ExcelVBA-Daten in Arbeitsmappe kopieren
30.11.2022 14:48:42
Rudi
dir fehlt ein .
wkbName = Environ$("USERPROFILE") & "\Desktop\" & "Mitarbeiterliste_Urlaubsliste_" & Range("F1").Value & ".xlsm"
AW: ExcelVBA-Daten in Arbeitsmappe kopieren
30.11.2022 14:58:39
Ya
Hallo Rudi,
vielen Dank für die schnelle Antwort. Leider zeigt er mir nach wie vor den Selben Fehler an.
AW: ExcelVBA-Daten in Arbeitsmappe kopieren
30.11.2022 15:29:37
Rudi
da fehlt ne 6:
.Range("AU6:AU700").PasteSpecial xlPasteValues
AW: ExcelVBA-Daten in Arbeitsmappe kopieren
30.11.2022 15:37:18
Ya
Manchmal wird man wirklich blind bei so vielen Zahlen :)
Vielen Dank für die schnelle Lösung!
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige