Registriert seit: 11.10.2018
Version(en): 2010
Hallo,
ich habe folgendes Problem und komme einfach nicht weiter: Wenn ich meine Exceldatei öffne, sollen automatisch alle verlinkten anderen Exceldateien geöffnet, aktualisiert und dann geschlossen werden. Diese Dateien sind alle passwortgeschützt. Beim schließen fragt er immer nach dem Passwort. Das bekomme ich nicht gelöst
Also:
ich öffne die Datei main.xlsx, diese enthält verknüpfungen zu dummy1.xlsx, dummy2.xlsx, etc., die alle passwortgeschützt sind. Alle dummy*.xlsx müssen alle Daten aktualisieren, sie sind mit einer Datenbank verknüpft. Anschließend sollen sie direkt wieder geschlossen werden und nur die Datei main.xlsx offen bleiben mit den nun korrekt und aktualisierten Werten.
Was immer ich auch versuche, wenn ich die Dateien wieder schließen will, fragt er nach dem Passwort der zu schließenden dummy*.xlsx. Dieses Problem bekomme ich nicht gelöst.
Erst habe ich es selbst probiert und bin gescheitert. Dann habe ich folgendes Makro aufgezeichnet:
Sub Workbook_Open()
Workbooks.Open Filename:= _ "Z:\Pfad\dummy.xlsx", Password:="test" ActiveWorkbook.RefreshAll ActiveWindow.Close savechanges = True
End Sub
Das Problem bleibt dasselbe. Er will ein Passwort haben, und zwar nicht zum Öffnen der Datei und auch nicht zum aktualisieren oder speichern, das habe ich durch Auskommentierung der entsprechenden Codezeilen getestet.
Für Hilfen jedweder Art bin ich sehr dankbar.
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo, vielleicht braucht es noch das Schreibkennwort? Hier sind die Befehle getrennt, um es besser testen zu können: Sub Workbook_Open() With Workbooks.Open(Filename:="Z:\Pfad\dummy.xlsx", _ Password:="test", _ WriteResPassword:="test") .RefreshAll .Save .Close End With End Sub Gruß Uwe
Registriert seit: 11.10.2018
Version(en): 2010
15.10.2018, 12:27
(Dieser Beitrag wurde zuletzt bearbeitet: 15.10.2018, 12:27 von ExcelNoob23.)
Hallo Uwe,
vielen Dank für Deine Antwort. Leider besteht das Problem immer noch:
1.) Ich öffne main.xlsx 2.) Bei der Sicherheitswarnung klicke ich auf "Inhalt aktivieren". 3.) Excel fragt mich, ob die Verknüpfungen aktualisieren möchte. Ich klicke auf "Aktualisieren". 4.) main.xlsx wird wie gewünscht aktualisiert. 5.) dummy.xlsx fragt mich nach dem Kennwort, was aber schon im Makro steht. Ich gebe das Kennwort ein. 6.) Die Sicherheitswarnung fragt mich, ob ich diese Datei zu einem vertrauenswürdigen Dokument erklären möchte. Ich klicke auf "Ja". 7.) dummy.xlsx wird wieder geschlossen.
Anfänglich kam noch die Datenschutzmeldung, als excel per makro die dummy.xlsx speichern sollte. Die habe ich inzwischen im Sicherheitscenter deaktiviert, in dem ich den Haken bei "beim Speichern persönliche Daten aus Dateneigenschaften entfernen" abgewählt habe.
Gibt es die Möglichkeit, sowohl die Passwortabfrage in den Griff zu bekommen, als auch die ganzen Popups automatisch mit "Ja" zu beantworten, so dass das nicht immer manuell geschehen muss?
OK, ich habe es gerade nochmal getestet, diesmal habe ich zusätzlich noch die tatsächliche Datei eingebunden (alpha.xlsx) und nicht bloß dummy.xlsx. Es ist merkwürdig. Er hat die verknüpfte Zelle zu alpha.xlsx aktualisiert, den korrekten Betrag in main.xlsx geschrieben. Im Anschluss kam die Aufforderung zur Eingabe des Passworts. Ich gebe das Passwort ein. Er schließt alpha.xlsx. Und plötzlich steht in der main.xlsx in der Zelle, in der der Wert aus alpha.xlsx verknüpft ist, nur noch "Bezug", obwohl der richtige Wert schon da stand. Letzteres passiert allerdings erst, wenn ich das zweite Passwort, also das für dummy.xlsx, eingebe. Ich bin verwirrt. So habe ich den Code angeordnet gehabt:
Sub Workbook_Open() With Workbooks.Open(Filename:="S:\Pfad\alpha.xlsx", _ Password:="omega", _ WriteResPassword:="omega") .RefreshAll .Save .Close End With With Workbooks.Open(Filename:="Z:\Pfad\dummy.xlsx", _ Password:="test", _ WriteResPassword:="test") .RefreshAll .Save .Close End With
End Sub
Zur Erläuterung: Es geht darum, nach und nach immer mehr Dateien einzubinden. Es soll für das Unternehmen eine Controlling-Tabelle entwickelt werden, die sich die relevanten Daten aus den jeweiligen Monatstabellen zieht, die wiederum ihre Daten aus einer Datenbank ziehen. Dadurch soll jeden Monat eine weitere Tabelle hinzukommen. Die alpha.xlsx-Dateien sind die tatsächlichen, die dummy.xlsx habe ich nur erstmal der Einfachheit halber angelegt und verwendet, um die alphas nicht ausversehen zu korrumpieren.
Liebe Grüße, Mark
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallo Mark,
Einige Meldungen bekommt man mit Application.DisplayAlerts=False weg, eventuell auch hier.
Was passiert eigentlich, wenn Du die Datei nicht mit Save sondern mit SaveAs speicherst Im Prinzip
... Application.DisplayAlerts = False With Workbooks.Open(Filename:="G:\test_03.xlsx")", _ Password:="test", _ WriteResPassword:="test") .RefreshAll .SaveAs Filename:=.FullName, FileFormat _ :=xlNormal, Password:="test", WriteResPassword:="test", _ ReadOnlyRecommended:=False, CreateBackup:=False .Close End With ...
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 11.10.2018
Version(en): 2010
Hallo Andre,
vielen Dank für Deine Antwort.
Wenn ich Deinen Code ausprobiere, klappt es beim ersten Mal. Beim nächsten Mal ist allerdings die verlinkte Datei, die mit .SaveAs gespeichert wurde, korrumpiert und kann nicht mehr geöffnet werden.
Es besteht auch weiterhin das Problem mit dem fehlenden Bezug, den er mir nach dem Schließen der verlinkten Datei anzeigt. Ich verstehe das nicht. Wenn ich den Code ohne den .Close Befehl ausführe, und die verlinkte Datei manuell schließe, gibt es den Bezug-Fehler nicht.
Die verlinkten Dateien müssen auch nicht zwangszweise gespeichert werden. Es wäre nur nett gewesen, darauf kann aber zur Not auch verzichtet werden, wenn sich das Problem so einfacher lösen lässt.
Wenn ich die Passage mit dem .SaveAs auskommentiere, bleibt auch das Problem mit der Passwortabfrage beim .Close bestehen. Merkwürdig ist, dass das nur auftritt, wenn ich die Hauptdatei öffne und das Makro ausgeführt wird. Wenn ich das Makro in der Entwicklungsumgebung ausführe, läut es, ohne dass das Passwort beim Schließen abgefragt wird.
Liebe Grüße, Mark
|