Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1380to1384
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel-Datei schreibgeschütz öffnen -> funktioniert

Excel-Datei schreibgeschütz öffnen -> funktioniert
17.09.2014 12:02:15
Schmitty
Hallo zusammen,
ich habe hier eine Excel-Datei, welche beim Start ein automatisches Makro aufruft um die Tabellenballt-Formatierung einer anderen Datei (auf dem Server) zu kopieren. Dazu öffnet das Makro die andere Datei (auf dem Server), kopiert die Formatierung und schließt die Datei wieder.
Da ja an der Datei auf dem Server keine Änderungen vorgenommen werden, reicht hier das Öffnen als schreibgeschützter Datei mit folgendem Code:
Workbooks.Open Filename:="Z:\kartei\Adressen.xlsm", ReadOnly:=True
Jetzt kann es aber mal zufällig vorkommen, das ein anderer User die Datei auf dem Server geöffnet hat und dort (berechtigt) änderungen vornimmt.
Wenn ich nun aber meine lokale Datei öffne und diese das oben genannte Makro ausführt, bekomme ich die Fehlermeldung "Diese Datei ist bereits von XXX geöffnet" und das obwohl ich die Datei lt. Makro schreibgeschützt öffnen wollte.
Ich möchte einfach nicht, dass diese Meldung erscheint (zumal sie ja meiner Meinung nach in diesem Fall überflüssig ist).
Hat jemand eine Idee?
Gruß
Christian

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel-Datei schreibgeschütz öffnen -> funktioniert
17.09.2014 12:13:02
Daniel
Hi
es sollte zwar nicht notwendig sein, aber so unterdrückt man die Systemrückfragen.
Es wird die automatsich voreingestellte Option verwendet:
Application.DisplayAlerts = false
Workbooks.Open Dateiname, ReadOnly:=True
Application.DisplayAlerts = true

Gruß Daniel

AW: Excel-Datei schreibgeschütz öffnen -> funktioniert
17.09.2014 12:56:15
Schmitty
Hallo Daniel,
danke (zum x-ten Mal) für deine Hilfe.
Ich weiß auch nicht mehr, warum das mit dem Schreibschutz nicht funktionieren will. Auch dein Lösungsvorschlag führt nicht zum erhofften Ziel, die Meldung erscheint weiterhin.
Nur wenn ich die Datei auf dem Server freigebe, kommt naturgemäß die Fehlermeldung nicht, dass wäre aber erst meine aller letzte Option.
Hier mal der komplette Code der beim Start meiner lokalen Datei ausgeführt wird:
' Beim öffnen der Datei die Formatierungen aktualisieren
Sub Workbook_Open()
' Blattschutz für alle Arbeitsmappen deaktivieren
Dim Blatt As Worksheet
For Each Blatt In Worksheets
Blatt.Unprotect ""
Next Blatt
' Format aus der Kunden-Datenbank holen
' Datei "Adressen.xlsm" öffnen
Workbooks.Open Filename:="Z:\kartei\Adressen.xlsm", ReadOnly:=True
'Schmitz GmbH
Workbooks("Adressen.xlsm").Worksheets("Schmitz GmbH").Rows("6:2500").Copy
Workbooks("Recherche.xlsm").Sheets("Schmitz GmbH").Rows("6:2500").PasteSpecial Paste:= _
xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Application.Goto Workbooks("Recherche.xlsm").Sheets("Schmitz GmbH").Range("B4")
' Schmitz EK
Workbooks("Adressen.xlsm").Worksheets("Schmitz EK").Rows("6:170").Copy
Workbooks("Recherche.xlsm").Sheets("Schmitz EK").Rows("6:170").PasteSpecial Paste:= _
xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Application.Goto Workbooks("Recherche.xlsm").Sheets("Schmitz EK").Range("B4")
' Raiffeisen Heizöl
Workbooks("Adressen.xlsm").Worksheets("Raiffeisen Heizöl").Rows("6:192").Copy
Workbooks("Recherche.xlsm").Sheets("Raiffeisen Heizöl").Rows("6:192").PasteSpecial Paste:= _
xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Application.Goto Workbooks("Recherche.xlsm").Sheets("Raiffeisen Heizöl").Range("F4")
' Raiffeisen Diesel
Workbooks("Adressen.xlsm").Worksheets("Raiffeisen Diesel").Rows("6:114").Copy
Workbooks("Recherche.xlsm").Sheets("Raiffeisen Diesel").Rows("6:114").PasteSpecial Paste:= _
xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Application.Goto Workbooks("Recherche.xlsm").Sheets("Raiffeisen Diesel").Range("F4")
' Datei "Adressen.xlsm" schließen und NICHT speichern
Workbooks("Adressen.xlsm").Close savechanges:=False
' Die Startseite wird festgelegt
Sheets("Start").Select
ActiveWindow.ScrollColumn = 1
ActiveWindow.ScrollRow = 1
' Blattschutz für alle Arbeitsmappen aktivieren
For Each Blatt In Worksheets
Blatt.Protect ""
Next Blatt
End Sub
Gruß
Christian
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige