Microsoft Excel

Herbers Excel/VBA-Archiv

Datei Schreibschutz Attribut löschen



Excel-Version: 9.0 (Office 2000)

Betrifft: Datei Schreibschutz Attribut löschen
von: Robert B.
Geschrieben am: 03.06.2002 - 15:57:15

Hallo Zusammen,

ich möchte im Verzeichnis C:\temp
alle Dateien *.gif löschen.

Das funktioniert mit

Kill C:\temp\*.gif

auch wunderbar.

Nur wenn die Dateiattribute auf schreibgeschützt stehen
erhalte ich einen Fehler.

Meine Frage wie kann ich den Schreibschutz entfernen?

Es sollte irgendwie mit der Befehl
Attributes funktionieren.

Aber wie?

Gruß Robert

  

Re: Datei Schreibschutz Attribut löschen
von: Daniel R.
Geschrieben am: 03.06.2002 - 16:30:00

Hallo Robert
Schau in der Excel-Hilfe mal unter "SetAttr"-Anweisung nach.
Gruss Daniel R.

  

Re: Datei Schreibschutz Attribut löschen
von: Robert B.
Geschrieben am: 03.06.2002 - 16:45:04

Erstmal Danke Daniel,

ich habe es gleich ausprobiert.

Wenn ich Explizit eine Datei angebe funkioniert
es mit SetAttr. Jedoch wenn ich

    SetAttr "C:\temp\*.gif", vbNormal


angebe, kommt der Laufzeitfehler 52

"Dateiname oder -nummer falsch"

Hast Du vieleicht hierzu auch eine gute Idee.

Gruß Robert

  

Re: Datei Schreibschutz Attribut löschen
von: Robert B.
Geschrieben am: 03.06.2002 - 22:20:45

Hy Daniel,

ich habe die Lösung.

Vieleicht liest Du ja diese Nachricht noch.


Private Sub Grafiklöschen()
Dim i
   With Application.FileSearch
      .LookIn = "C:\tmp\"
      .FileType = msoFileTypeAllFiles
      .Filename = "*.gif"
      If .Execute() > 0 Then
        For i = 1 To .FoundFiles.Count
            SetAttr .FoundFiles(i), vbNormal
        Next i
         Kill ("c:\tmp\*.gif")
         End If
   End With
End Sub

Nochmals Danke für den entscheidenden Tip

Gruß Robert

  

Re: Datei Schreibschutz Attribut löschen
von: Robert B.
Geschrieben am: 03.06.2002 - 22:38:13

Hy Daniel,

ich habe die Lösung.

Vieleicht liest Du ja diese Nachricht noch.


Private Sub Grafiklöschen()
Dim i
   With Application.FileSearch
      .LookIn = "C:\tmp\"
      .FileType = msoFileTypeAllFiles
      .Filename = "*.gif"
      If .Execute() > 0 Then
        For i = 1 To .FoundFiles.Count
            SetAttr .FoundFiles(i), vbNormal
        Next i
         Kill ("c:\tmp\*.gif")
         End If
   End With
End Sub

Nochmals Danke für den entscheidenden Tip

Gruß Robert