Hallo!
Ich habe hier ein Verzeichnis mit etwa 300 Excel-Files. Die Excel-Files sind passwortgeschützt, das Passwort ist allerdings bekannt. Es sollen aus allen Files die Passwörter entfernt werden. Der manuelle Weg Öffnen,Eingeben,Entfernen,Speichern ist bei 300 Files nicht wirklich effektiv.
Hat jemand eine Idee, welches Tool man da nehmen könnte. Die meisten Password-Remover beschränken sich auf das Anwendungsgebite, wenn User die Passwörter „vergessen“ haben, nicht aber auf einen Batch-Lauf in einem Verzeichnis.
Gruß
Jens
Hallo, Jens!
Hat jemand eine Idee, welches Tool man da nehmen könnte. Die
meisten Password-Remover beschränken sich auf das
Anwendungsgebite, wenn User die Passwörter „vergessen“ haben,
nicht aber auf einen Batch-Lauf in einem Verzeichnis.
Ein einfaches Makro, ungefähr so:
Sub EntfernePasswort()
const PFAD as string="C:\Temp"
const PASSWORT as string="DeinPasswort"
dim wbDatei as Workbook
dim strDatei as string
On Error Resume Next ' mit ein wenig Glück sollte bestenfalls das
' Unprotect Fehler liefern, wenn das Passwort falsch ist oder
' die Datei schon vorher gar nicht geschützt war...
strDatei=Dir(PFAD &"\*.xls")
do while strDatei""
Set wbDatei = Workbooks.Open(PFAD &"\"& strDatei)
wbDatei.Unprotect PASSWORT
wbDatei.Close True
strDatei=Dir()
loop
End Sub
Wie immer ungetestet/uncompiliert…
Gruß, Manfred
Ein einfaches Makro, ungefähr so:
Sub EntfernePasswort()
const PFAD as string=„C:\Temp“
const PASSWORT as string=„DeinPasswort“
dim wbDatei as Workbook
dim strDatei as string
On Error Resume Next ’ mit ein wenig Glück sollte bestenfalls
das
’ Unprotect Fehler liefern, wenn das Passwort falsch ist oder
’ die Datei schon vorher gar nicht geschützt war…
strDatei=Dir(PFAD &"*.xls")
do while strDatei""
Set wbDatei = Workbooks.Open(PFAD &""& strDatei)
wbDatei.Unprotect PASSWORT
wbDatei.Close True
strDatei=Dir()
loop
End Sub
Wie immer ungetestet/uncompiliert…
Gruß, Manfred
Hallo Manfred,
das ist sehr cool und funktioniert super. Ich stelle aber gerade fest, dass offenbar einige der Excel-Files links zu anderen Files haben. Naturgemäß fragt Excel beim Öffnen des Files also, ob die entahltenen Links upgedated werden soll. Das stört den Batchlauf natürlich. Ich denke, ich müsste also noch irgendwo ein ppUpdateOptionManual einbauen, aber wo?
Gruß
Jens
So geht´s.
Hallo Manfred,
das ist sehr cool und funktioniert super. Ich stelle aber
gerade fest, dass offenbar einige der Excel-Files links zu
anderen Files haben. Naturgemäß fragt Excel beim Öffnen des
Files also, ob die entahltenen Links upgedated werden soll.
Das stört den Batchlauf natürlich. Ich denke, ich müsste also
noch irgendwo ein ppUpdateOptionManual einbauen, aber wo?
Wo Du nun diesen Ausdruck her hast, weiss ich nicht, es scheint aus einer Powerpoint-Hilfe zu stammen
Aber es müsste auch einfacher gehen, indem Du ein „, 0“ hinzufügst:
Set wbDatei = Workbooks.Open(PFAD &"\"& strDatei **, 0** )
Das ist der UpdateLink-Parameter (siehe Hilfe), der die Nachfrage unterbinden sollte.
Kristian
Wo Du nun diesen Ausdruck her hast, weiss ich nicht, es
scheint aus einer Powerpoint-Hilfe zu stammen
Aber es
müsste auch einfacher gehen, indem Du ein „, 0“
hinzufügst:
Set wbDatei = Workbooks.Open(PFAD &""&
strDatei , 0 )
Das ist der UpdateLink-Parameter
(siehe Hilfe), der die Nachfrage unterbinden sollte.
Hi Kristian,
herzlichen Dank - das war ein guter Tip. Der pp-Befehl stammt tatsächlich aus Powerpoint, wo man für jedes Slide den Update disabled kann.
Nochmals Dank an alle Beteiligten!
Gruß
Jens