Avatar billede jath08ac Forsker
22. juni 2018 - 08:46 Der er 3 kommentarer

Kontroller om Excel fil er åben

Hej,

Jeg har lavet nogle VBA koder som kræver, at visse excelfiler er lukket for at makroen kan køre.

Er det muligt at lave en makro kode der kan kontrollerer om en Excel fil er åben?

Har prøvet at Google mig lidt frem, men kan ikke rigtig finde nogen løsning :-(
Avatar billede acore Ekspert
22. juni 2018 - 09:12 #1
Sub TestFileOpen()
If IsFileOpen("c:\Users\Flj\Desktop\xxx.xlsx") Then
        MsgBox "File already in use!"
    Else
        MsgBox "File not in use!"
        Workbooks.Open ("c:\Users\Flj\Desktop\xxx.xlsx")
    End If
End Sub
Function IsFileOpen(filename As String)
    Dim filenum As Integer, errnum As Integer

    On Error Resume Next
    filenum = FreeFile()
   
    Open filename For Input Lock Read As #filenum
    Close filenum
    errnum = Err
    On Error GoTo 0

    Select Case errnum
        Case 0
        IsFileOpen = False

        Case 70
            IsFileOpen = True

        Case Else
            Error errnum
    End Select

End Function
Avatar billede Dan Elgaard Ekspert
22. juni 2018 - 14:03 #2
Avatar billede store-morten Ekspert
22. juni 2018 - 23:08 #3
Sub test()

On Error Resume Next
    Application.Workbooks("Mappe1.xlsx").Activate
    If Err.Number <> 0 Then
   
        MsgBox ("Mappe1 er ikke åben?")
   
    Else
   
        MsgBox ("Mappe1 er åben?")
       
    End If
   
End Sub
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester