# feststellen, ob datei geöffnet unter visual basic script



## mertens2 (22 Januar 2006)

hallo,

habe ein problem:

muss mit visual basic script (bestandteil meiner winCCflex visualisierung) feststellen, ob eine datei (blöde excel datei, die auch von anderen systemen verwendet wird) schon geöffnet ist oder nicht. Ist sie noch nicht geöffnet, öffne ich sie im script, andernfalls warte ich halt bis sie wieder geschlossen wurde. ich habs mal einfach mit öffnen probiert und dann mit err.number probiert, leider ohne erfolg. (bin allerdings ne zeimliche vb-nulpe)
Weiss jemand wie ich das rausfinden kann? Oder hat jemand eine idee, wie zwei leute gemeinsam auf die datei zugreifen können?

gruß und dank im vorraus


----------



## volker (23 Januar 2006)

das geht so


```
on error resume next
Set fs = CreateObject("Scripting.FileSystemObject")

Set TextFile = fs.openTextFile("e:\error.txt", 8)
fehler=err.number
msgbox fehler
textfile.close
```

ist die datei z.b. durch excel geöffnet wird der fehler 70 (zugriff verweigert) zurückgegeben.


----------



## mertens2 (23 Januar 2006)

*habe aber keinen txt-file...*

funktioniert das auch mit einer geöffneten xls-datei?

gruß und dank


----------



## volker (23 Januar 2006)

sicher. ich habe obige txt in excel geöffnet und das script liefert dann fehler 70.


----------



## mertens2 (23 Januar 2006)

*leider kein erfolg*

hab das skript mal so übernommen. erstmal danke. sieht bei mir wie folgt aus:

fname="d:\exelfile.xls"
On Error Resume Next
Set fso=CreateObject("scripting.filesystemobject")
Set textfile=fso.openTextFile(FName,8)

SmartTags("Datenaustausch\EnoW")=Err.Number
textfile.close
On Error GoTo 0

Leider bleibt die Err.Number auf null, auch wenn exelfile.xls bereits geöffnet ist. Noch eine Idee, woran das liegen könnte?


----------



## mertens2 (23 Januar 2006)

*das geht!!!!!!!!!!!!!!!!!!*

ja, vielen, vielen dank volker. es funktioniert. war nur ein tippfehler im script!


----------



## santero (30 März 2011)

Wo ist den der Tippfehler loool ??

Weil bie mir bleibt errnumber auch auf 0


Edit:

hab mal fs.opentextfile ( fname, forwriting) geschrieben. Dann liefert mir das die Fehlernummer 70​


----------

