Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Workbook.Open funtioniert auf einmal nicht mehr ganz!
#1
Hallo zusammen,

ich habe das nächste Phänomen, dass ich mir nicht erklären kann, evtl. weiß jemand hier woran das liegt.

Wir öffnen seit Jahren schon mit folgenden Code:

Private Sub LinkAuftrag()
    Workbooks.Open Filename:="C:\Auftrage\Auftrag" & Range("J3") & ".xlsm"
End Sub


eine bestimmte Datei. Es funktioniert auch wunderbar, solange die Datei niemand offen hat. Wenn jemand anderes diese Datei offen hat, dann funktioniert das nicht mehr, das hat aber die ganze Zeit funktioniert ohne Probleme und die Datei wurde eben schreibgeschützt geöffnet. Nun kommt die Fehlermeldung 1004 - Excel kann auf Datei nicht zugreifen ...

Weiß jeman Rat?

Vielen lieben Dank im Voraus
LG
Alexandra
Antworten Top
#2
Hallo, 19 

gib den Parameter " ,ReadOnly:=True" einfach mit an. 21
________
Servus
Case
Antworten Top
#3
Hallo Case,

das würde bedeuten, daß die Datei immer in Readonly Modus geöffnet wird, auch wenn noch niemand die Datei offen hat, richtig?
Wenn die Datei noch nicht offen ist, sollte diese natürlich ganz normal geöffnet worden.

Noch ne Idee?

DAnke & LG
Alexandra
Antworten Top
#4
Hallo,

prüfe zuerst, ob die Datei bereits geöffnet ist, falls ja, wird sie mit "ReadOnly" geöffnet, sonst normal. Auch im ersten Fall kann sich VBA jederzeit Schreibrechte verschaffen.

Es gibt viele Arten zu prüfen, ob eine Datei geöffnet ist. Hier nur eine Variante:

Code:
Function fn_Tilde(ByVal file) As Boolean

If Left(file, 2) = "~$" Then fn_Tilde = False: Exit Function
If Dir(Pfad & "~$" & file, vbHidden) = vbNullString Then
    fn_Tilde = True
Else
    fn_Tilde = False
End If
End Function

mfg
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste