Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro ausführen wenn "Schreibgeschützt" geöffnet

Forumthread: Makro ausführen wenn "Schreibgeschützt" geöffnet

Makro ausführen wenn "Schreibgeschützt" geöffnet
10.06.2003 17:01:12
Pascal
Hallo zusammen

Das folgende Makro möchte ich von einer "Schreibgeschützt" geöffneten Datei öffnen. Das Problem ist nur, das es mir immer Laufzeitfehler 1004 mit dem Verweis, das die Datei schreibgeschützt ist, angibt.

Makro:
ActiveWorkbook.SaveAs Filename:= _
"L:\Produktion\Planung\auftraege\ff\PPS-Tools\auftraege2000_neu_1_Material-Eingang.xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="999888", _
ReadOnlyRecommended:=False, CreateBackup:=False


Wie kann ich das Makro anpassen, das es funktioniert?

Im weiteren möchte ich nach dem Vollzug der erstellten Datei diverse Blätter löschen. Doch auch in diesem Fall funktiniert das Makro nicht so wie ich möchte. Jedesmal wenn automtisch Tabellen gelöscht werden sollten, werde ich gefragt ob die Tabellen wirklich gelöscht werden!

Wie kann ich diese Frage umgehen, so das sie automatisch mit "JA" beantwortet wird?

Besten Dank für Eure Hinweise.
Gruss
Pascal

Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
zu Punkt 2
10.06.2003 17:08:09
TinoS

Hallo

Damit müssten die Fragen unterbunden werden:

Application.DisplayAlerts = False

Gruß Tino S.

Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
10.06.2003 23:46:18
Nepumuk

Hallo Pascal,
versuchst du mit der SaveAs - Anweisung die Datei unter ihrem alten Namen neu abzuspeichern?
Gruß
Nepumuk

Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
11.06.2003 07:25:07
Pascal

Hallo Nepumuk

Ich versuchte die Datei unter einem anderen Namen abzuspeichern, aber im Moment funktioniert mit dem folgenden Makro nicht einmal mehr das Speichern.

Makro:

ActiveWorkbook.SaveAs Filename:= _
"L:\produktion\planung\auftraege\ff\PPS-Tools\auftraege2000_neu_1_Material-Eingang.xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="999888", _
ReadOnlyRecommended:=False, CreateBackup:=False

Kannst Du mir weiterhelfen?
Besten Dank für Deine Antwort.
Gruss
Pascal

Anzeige
Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
11.06.2003 07:35:53
Nepumuk

Hallo Pascal,
ich kann den Fehler nur nachvollziehen, wenn ich versuche die Mappe unter dem selben Namen abzuspeichern. Dann kommt Fehler 1004 - Nicht ausführbar. 'L:\produktion\planung\auftraege\ff\PPS-Tools\auftraege2000_neu_1_Material-Eingang.xls' ist schreibgeschützt. Was nun?
Gruß
Nepumuk

Anzeige
Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
11.06.2003 07:44:39
Pascal

Hallo Nepumuk

Ich habe leider im Moment keine Ahnung, wie ich das Makro anpassen könnte.

Hast Du eine Idee?

Gruss
Pascal

Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
11.06.2003 08:01:42
Nepumuk

Hallo Pascal,
dann mach es so:

Den Dateipfad und Namen musst du natürlich noch anpassen.
Gruß
Nepumuk

Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
11.06.2003 11:37:36
Pascal

Hallo Nepumuk

Das Makro verursacht immer noch das gleiche Problem. Laufzeitfehler 1004, wie gehabt.

Gibt es noch eine andere Möglichkeit. Wichtig ist, das die neu erstellte Datei nach Beendigung des Makros nicht mehr Schreibgeschützt sein darf.

Gruss
Pascal

Anzeige
Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
11.06.2003 11:48:38
Nepumuk

Hallo Pascal,
da steht doch noch ein zusätzlicher Hinweis in der Fehlermeldung. Wie lautet der?
Gruß
Nepumuk

Re: Makro ausführen wenn "Schreibgeschützt" geöffnet
13.06.2003 16:54:36
Pascal

Hallo Nepumuk
Sorry das ich mich erst jetzt melde. Ich habe verschieden Versuche mit dem Makro ausgeführt. Jetzt funktionierts bestens.
Es hatte damit zu tun das die neu erstellte Datei "Schreibgeschützt" war, so das ich die Datei nicht einfach überspielen konnte. Jetzt lösche ich mit dem Makro vor dem zweiten Speichern den Schreibschutz.
Gruss
Pascal

Anzeige
;
Anzeige

Infobox / Tutorial

Makro ausführen bei schreibgeschützten Excel-Dateien


Schritt-für-Schritt-Anleitung

Um ein Makro auszuführen, wenn eine Excel-Datei schreibgeschützt geöffnet ist, kannst du die folgenden Schritte befolgen:

  1. Öffne die schreibgeschützte Excel-Datei.

  2. Verwende das folgende Makro, um die Datei unter einem neuen Namen zu speichern:

    Sub SaveAsNewFile()
       Dim newFileName As String
       newFileName = "L:\Produktion\Planung\auftraege\ff\PPS-Tools\auftraege2000_neu_1_Material-Eingang_neu.xls"
    
       ' Fehlerbehandlung aktivieren
       On Error Resume Next
    
       ' Speichern unter neuem Namen
       ActiveWorkbook.SaveAs Filename:=newFileName, FileFormat:=xlNormal, Password:="", WriteResPassword:="999888", ReadOnlyRecommended:=False, CreateBackup:=False
    
       ' Fehlerbehandlung deaktivieren
       On Error GoTo 0
    End Sub
  3. Um das Löschen von Blättern ohne Bestätigungsdialog zu ermöglichen, füge diese Zeile vor dem Löschen hinzu:

    Application.DisplayAlerts = False
  4. Vergiss nicht, die Warnung nach dem Löschen wieder zu aktivieren:

    Application.DisplayAlerts = True

Häufige Fehler und Lösungen

Laufzeitfehler 1004: Dieser Fehler tritt auf, wenn du versuchst, die Datei unter demselben Namen zu speichern, während sie schreibgeschützt ist. Überprüfe, ob du einen neuen Dateinamen verwendest.

Bestätigungsdialog beim Löschen von Blättern: Wenn du beim Löschen von Blättern gefragt wirst, ob du sie wirklich löschen möchtest, stelle sicher, dass du Application.DisplayAlerts = False korrekt eingesetzt hast.


Alternative Methoden

Eine alternative Methode besteht darin, die Datei zuerst in den Schreibschutzmodus zu entfernen, bevor du versuchst, sie zu speichern. Dies kann durch das Setzen der ReadOnly-Eigenschaft auf False erfolgen. Beachte jedoch, dass dies nur funktioniert, wenn du die entsprechenden Berechtigungen hast.


Praktische Beispiele

Hier ist ein einfaches Beispiel, um den Schreibschutz vor dem Speichern zu entfernen:

Sub RemoveReadOnlyAndSave()
    Dim filePath As String
    filePath = "L:\Produktion\Planung\auftraege\ff\PPS-Tools\auftraege2000_neu_1_Material-Eingang.xls"

    ' Entfernen des Schreibschutzes
    SetAttr filePath, vbNormal

    ' Speichern der Datei
    ActiveWorkbook.SaveAs Filename:=filePath, FileFormat:=xlNormal
End Sub

Tipps für Profis

  • Fehlerprotokollierung: Implementiere eine Fehlerprotokollierung, um festzustellen, wo dein Makro möglicherweise versagt. Nutze On Error GoTo für eine detailliertere Fehlermeldung.

  • Verwende Variablen: Anstatt Dateipfade hartkodiert im Makro zu verwenden, speichere sie in Variablen, um die Wartung des Codes zu erleichtern.


FAQ: Häufige Fragen

1. Wie speichere ich eine schreibgeschützte Datei unter einem neuen Namen? Um eine schreibgeschützte Datei unter einem neuen Namen zu speichern, nutze die SaveAs-Methode und stelle sicher, dass du einen anderen Dateinamen angibst.

2. Wie kann ich vermeiden, beim Löschen von Excel-Blättern gefragt zu werden? Füge Application.DisplayAlerts = False vor dem Löschvorgang hinzu, um die Bestätigungsdialoge zu unterdrücken. Stelle sicher, dass du sie nach dem Vorgang wieder aktivierst.

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