Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Onedrive Speicherort Fehler 1004

Forumthread: Onedrive Speicherort Fehler 1004

Onedrive Speicherort Fehler 1004
01.05.2020 01:02:04
Marian
Hallo!
Ich möchte beim Öffnen einer Datei ein automatisches Backup mit Timestamp erstellen. Leider hat das Makro ein Problem mit meinem Onedrive als Speicher.
Folgendes Makro verwende ich:

Private Sub Workbook_Open()
Dim FileName As String
Dim FileExtension As String
Dim FileDate As String
Dim FileBackupName As String
SavePath = "https://d.docs.live.net/ONEDRIVENUMMER/ZIELORDNER/" 'Variante 1
SavePath = "/Users/USERNAME/Dokumente/OneDrive/ZIELORDNER/" 'Variante 2
FileName = Left(ThisWorkbook.name, InStrRev(ThisWorkbook.name, ".") - 1)
FileExtension = Mid(ThisWorkbook.name, InStrRev(ThisWorkbook.name, ".") + 1)
FileDate = Format(Now, "YYYYmmdd_hhmmss")
FileBackupName = SavePath & FileName & "_" & FileDate & "." & FileExtension
ActiveWorkbook.SaveCopyAs FileBackupName
End Sub

Variante 2 funktioniert einwandfrei und erstellt eine Backup Datei in dem Ordner in meinem Mac.
Variante 1 leider nicht. Ich bin der Besitzer des Onedrive-Ordners und habe alle Recht auf Onedrive.
Bei Variante1 kommt der Fehler 1004, bei Debuggen verweist er auf Zeile: "ActiveWorkbook.SaveCopyAs FileBackupName"
Die Fehlermeldung ist 1004 - Excel kann nicht auf die Datei zugreifen, es muss also irgendein Problem mit dem Zugriff haben.
In anderen Makros ist es kein Problem Daten in bereits bestehende andere Dateien in den gleichem Onedrive zu kopieren oder neue Dateien zu erstellen. Dort wird allerdings direkt auf eine Datei verwiesen und nicht auf einen Ordner im Allgemeinen.
Variante 2 ist leider keine Lösung, da von verschiedenen Computern auf die Datei zugegriffen wird.
Kennt jemand ne Lösung, oder hat nen anderen Code mit dem das eventuell funktioniert?
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Onedrive Speicherort Fehler 1004
01.05.2020 01:59:07
Martin
Hallo Marian,
ich habe kein Onedrive und kann es daher leider nicht testen. Aber wenn ich es richtig sehe, dann ist der Ordner aus Variante 2 ein "virtuelles Verzeichnis" und die Datei landet automatisch in deinem Onedrive.
Eine Datei kann übrigens prinzipiell nicht einfach mit "Speichern unter..." mit Verweis auf eine Domain mit "http:" bzw. "https:"-Adresse gespeichert werden.
Viele Grüße
Martin
Anzeige
AW: Onedrive Speicherort Fehler 1004
01.05.2020 20:50:03
Marian
Hallo Martin,
"Eine Datei kann übrigens prinzipiell nicht einfach mit "Speichern unter..." mit Verweis auf eine Domain mit "http:" bzw. "https:"-Adresse gespeichert werden." - das kann ich so nicht bestätigen.
Folgendes Makro funktioniert einwandfrei:
Sub CSVExport ()
Dim wb As Workbook
Dim AL As Range
Set AL = Worksheets("Daten").Range("AA4:AA999")
AL.Cells.Copy
Set wb = Workbooks.Add
wb.Worksheets(1).Range("A1").PasteSpecial xlPasteValues
Dim SaveToDirectory As String
SaveToDirectory = "https://d.docs.live.net/ONDRIVENUMMER/ZIELORDNER/Export.csv"
wb.SaveAs SaveToDirectory, xlCSV
wb.Close
End Sub
Excel also scheint ein Problem damit zu haben Schreibrechte in einem Onedrive-Ordner durchzusetzen, anstatt eine Datei X.csv in einem Onedrive-Ordner zu erstellen.
Ich dachte eventuell hat jemand schonmal ein ähnliches Problem gehabt.
Ich bin dankbar für jeden Tipp.
Anzeige
AW: Onedrive Speicherort Fehler 1004
02.05.2020 11:21:06
Martin
Hallo Marion,
dann entschuldige ich mich, wenn "Speichern unter..." mit Verweis auf eine "https"-Adresse doch funktioniert. Vielleicht hat Microsoft da eine benutzerfreundliche Lösung entwickelt, denn eigentlich geht das technisch betrachtet nicht.
Ich lasse deine Frage mal offen, vielleicht kann dir jemand anderes da weiterhelfen. Ich kann es wegen fehlendem Onedrive-Konto leider nicht testen.
VG Martin
Anzeige
SaveCopyAs funktionert nicht für Sharepoint
03.05.2020 12:29:44
EtoPHG
und/oder OneDrive, Marian
Das ist seit mehr als 4 Jahren ein bekanntes Problem bei Microsoft, aber offensichtlich wird es nicht angegangen. Vielleicht z wegen zuwenig Interessenten :-( und/oder Fehlermeldungen.
Die Methode SaveAs hingegeben funktioniert problemlos.
Gruess Hansueli
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Onedrive Speicherort Fehler 1004 in Excel VBA beheben


Schritt-für-Schritt-Anleitung

Um den Fehler 1004 beim Speichern von Dateien auf OneDrive mit VBA zu beheben, folge diesen Schritten:

  1. Überprüfe den Speicherort: Achte darauf, dass der Speicherort korrekt ist. Verwende entweder die URL mit https://d.docs.live.net/ oder den lokalen Pfad zu deinem OneDrive-Ordner.

    Beispiel:

    SavePath = "https://d.docs.live.net/ONEDRIVENUMMER/ZIELORDNER/"
  2. Makro anpassen: Stelle sicher, dass Dein Makro richtig eingerichtet ist, um die Datei zu speichern. Verwende ActiveWorkbook.SaveCopyAs und stelle sicher, dass der Dateiname korrekt formatiert ist.

  3. Rechte überprüfen: Da Du der Besitzer des Onedrive-Ordners bist, überprüfe, ob die Zugriffsrechte korrekt gesetzt sind. Manchmal kann es zu Problemen kommen, wenn Excel nicht die nötigen Berechtigungen hat.

  4. Debugging nutzen: Wenn der Fehler weiterhin besteht, setze Breakpoints im VBA-Editor und überprüfe die Werte der Variablen zu Laufzeit.

  5. Makro testen: Teste das Makro nach jeder Änderung, um sicherzustellen, dass es wie gewünscht funktioniert.


Häufige Fehler und Lösungen

  • Fehler 1004: „Excel kann nicht auf die Datei zugreifen.“

    • Lösung: Überprüfe den Pfad und die Zugriffsrechte auf den OneDrive-Ordner. Verwende vba thisworkbook.path onedrive für lokale Tests.
  • Dateien nicht auf OneDrive speichern:

    • Lösung: Stelle sicher, dass Du den richtigen OneDrive-Pfad verwendest. Versuche, die Datei lokal zu speichern und anschließend manuell auf OneDrive zu verschieben.
  • Zugriffsprobleme mit https:

    • Lösung: Verwende den lokalen Pfad zu deinem OneDrive, anstatt den direkten https-Link.

Alternative Methoden

Wenn das Speichern mit SaveCopyAs nicht funktioniert, gibt es alternative Methoden:

  • Verwendung von SaveAs:

    ActiveWorkbook.SaveAs "https://d.docs.live.net/ONEDRIVENUMMER/ZIELORDNER/DeineDatei.xlsx"
  • Kopieren und Einfügen: Erstelle eine lokale Kopie und lade sie anschließend manuell in den OneDrive-Ordner hoch.

  • SharePoint-Integration: Wenn Du Zugriff auf SharePoint hast, kannst Du die excel vba savecopyas sharepoint Methode verwenden, um Dateien direkt in SharePoint zu speichern.


Praktische Beispiele

Hier sind einige praktische VBA-Schnipsel, die Dir helfen können:

  1. Backup mit Timestamp:

    Private Sub Workbook_Open()
       Dim SavePath As String
       SavePath = "https://d.docs.live.net/ONEDRIVENUMMER/ZIELORDNER/"
       ActiveWorkbook.SaveCopyAs SavePath & "Backup_" & Format(Now, "YYYYmmdd_hhmmss") & ".xlsx"
    End Sub
  2. CSV-Export:

    Sub CSVExport()
       Dim wb As Workbook
       Set wb = Workbooks.Add
       ActiveSheet.Range("A1").Value = "Test"
       wb.SaveAs "https://d.docs.live.net/ONDRIVENUMMER/ZIELORDNER/Export.csv", xlCSV
       wb.Close
    End Sub

Tipps für Profis

  • Verwende vba dir onedrive zur Überprüfung, ob der angegebene Pfad tatsächlich existiert.
  • Aktiviere die OneDrive-Synchronisierung für einen reibungslosen Zugriff auf Dateien.
  • Fehlerprotokollierung: Implementiere eine Fehlerprotokollierung in Deinen VBA-Skripten, um zukünftig Probleme einfacher nachzuvollziehen.
  • Teste die Kompatibilität mit verschiedenen Excel-Versionen, da ältere Versionen manchmal Schwierigkeiten mit OneDrive haben.

FAQ: Häufige Fragen

1. Warum funktioniert mein Makro nicht mit SaveCopyAs auf OneDrive? Es kann an den Zugriffsrechten oder dem Pfad liegen. Stelle sicher, dass Du den richtigen OneDrive-Pfad verwendest und die Datei nicht bereits geöffnet ist.

2. Kann ich Dateien direkt auf OneDrive speichern? Ja, Du kannst Dateien direkt auf OneDrive speichern, indem Du den richtigen Pfad verwendest. Beachte jedoch, dass es manchmal zu Zugriffsproblemen kommen kann.

3. Was ist der Unterschied zwischen SaveAs und SaveCopyAs? SaveAs speichert die aktive Arbeitsmappe unter einem neuen Namen, während SaveCopyAs eine Kopie der Arbeitsmappe erstellt, ohne die aktuelle Arbeitsmappe zu schließen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige