Milläköhän komennolla VB tarkistaa, onko joku tiedosto jo valmiiksi avoinna?
Tarkoitus olisi tehdä lause vähän tähän malliin:
If [tiedosto on jo valmiiksi auki] then [sitä sun tätä]
Näkisin että koittaa avata sen yksityisesti (Lock Read Write) ja jos tulee virhe niin se oli valmiiksi auki.
Function IsFileAlreadyOpen(FileName as String) As Boolean
Dim FNum as Integer
FNum = FreeFile()
On Error Resume Next
Open FileName For Input Access Read Lock Read Write As #FNum
IsFileAlreadyOpen = Err.Number <> 0
If IsFileAlreadyOpen Then
Err.Clear
Else
Close #FNum
End If
End FunctionEdellinen taitaa palauttaa True myös jos tiedostoa ei ole. Jos tämä on olennaista ottaa huomioon, niin virheen numerosta voinee päätellä kummasta on kyse.
Aihe on jo aika vanha, joten et voi enää vastata siihen.