Hur gör man för att kolla om en fil är öppen (en excel-fil)? Hej Nähe... Du kan testa denna funktionen. Den retunerar True om ingen använder filen. Tack Andreas, det fungerar fint! Hej ops! nä det vill man ju inte... Tack! Andreas kod fungerar dock inte om filen man ska kolla är skrivskyddad... Du kan ju kolla om den är skrivskyddad så här: jo... men hur kollar jag om den är öppen om den är skrivskyddad?kolla om en fil är öppen, hur då?
Och om den är det, hur stänger jag den?
Tacksam för hjälp! (var gärna tydlig med kod o sånt…)Sv: kolla om en fil är öppen, hur då?
Svar på första delen
Private Function FileExist(ByVal FilId As String) As Boolean
'FilId innehåller hela sökvägen till sökt fil
'Kontroll om filen redan finns och är öppnad
Dim FileNum
FileNum = FreeFile
On Error Resume Next
Open FilId For Input As #FileNum
If Err = 55 Then
MsgBox "Fil redan Öppnad"
FileExist = False ' det sket sig
End If ' Err
Err.Clear
End Function
'Err 53 File Not FoundSv: kolla om en fil är öppen, hur då?
får inte det att fungera på en Excelfil... err förblir noll även om filen är öppnad i Excel.
Hur kan man då göra??? Sv: kolla om en fil är öppen, hur då?
<code>
Public Function LockFile(ByVal FileName As String) As Boolean
Dim FileNo As Long
On Error GoTo LockFile_Err
FileNo = FreeFile
Open FileName For Input Lock Read Write As FileNo
LockFile = True
Close FileNo
Exit Function
LockFile_Err:
Select Case Err.Number
Case 55, 70
Case Else
'Err.Raise Err.Number, Err.Source, Err.Description, Err.HelpFile, Err.HelpContext
End Select
End Function
</code>Sv: kolla om en fil &amp;#228;r &amp;#246;ppen, hur d&am
(Svens variant funkar också om man byter input till output, får då err=52 om filen är öppen.)Sv: kolla om en fil &amp;amp;#228;r &amp;amp;#246;ppen, hur d&am
Output är inte bra,då skapas det en ny fil.Sv: kolla om en fil &amp;amp;amp;#228;r &amp;amp;amp;#246;ppen,
Sv: kolla om en fil &#228;r &#246;ppen, hur d&#229;?
:-(Sv: kolla om en fil &#228;r &#246;ppen, hur d&#229;?
<code>
If GetAttr(FileName) AND vbReadOnly Then
MsgBox "Skriv skyddad!"
Else
MsgBox "Ej skriv skyddad!"
End If
</code>Sv: kolla om en fil &#228;r &#246;ppen, hur d&#229;?