Posts: 247
Registered: ‎04-15-2011
Message 1 of 5 (271 Views)
Accepted Solution

Check if file open

271 Views, 4 Replies
03-15-2012 01:36 PM

I need to export data to an excel file but I need to check if the file is already open.


Searching the internet I found this but I don't know what "imports" to use to use to enable it. 

    Public Function FileInUse(ByVal sFile As String) As Boolean
        If System.IO.File.Exists(sFile) Then
                Dim F As Short = FreeFile()
                FileOpen(F, sFile, OpenMode.Binary, OpenAccess.ReadWrite, OpenShare.LockReadWrite)
                Return True
            End Try
        End If
    End Function




Distinguished Contributor
Posts: 406
Registered: ‎12-09-2003
Message 2 of 5 (269 Views)

Re: Check if file open

03-15-2012 01:42 PM in reply to: SRSDS

Looks like you need to import Microsoft.VisualBasic to get the FileOpen and FileClose functions. You may want to change them to use IO.File.Open and IO.File.Close though, to get away from the old VB syntax.


Brent McAnney

*Expert Elite*
Posts: 1,569
Registered: ‎10-08-2008
Message 3 of 5 (254 Views)

Re: Check if file open

03-15-2012 02:08 PM in reply to: SRSDS

I don't know what is the namespaces you use

in your program to work with Excel

Anyway you may want to try this function as well

   'Imports Microsoft.Office.Interop.Excel
    'Imports Excel = Microsoft.Office.Interop.Excel
    Public Function IsExcelFileOpen(xlapp As Microsoft.Office.Interop.Excel.Application, filename As String) As Boolean
        Dim isopen As Boolean = True
        Dim wbook As Microsoft.Office.Interop.Excel.Workbook
            wbook = xlapp.Workbooks(filename)
            isopen = False
        End Try
        Return isopen
    End Function



Posts: 247
Registered: ‎04-15-2011
Message 4 of 5 (253 Views)

Re: Check if file open

03-15-2012 02:11 PM in reply to: BMcAnney


I added Imports Microsoft.VisualBasic but it didn't support the problem


OpenMode.Binary is the only one it has a problem with it seems.

*Expert Elite*
Posts: 1,285
Registered: ‎06-21-2004
Message 5 of 5 (251 Views)

Re: Check if file open

03-15-2012 02:22 PM in reply to: SRSDS



(defun botsbuildbots() (botsbuildbots))
Are you familiar with the Autodesk Expert Elites? The Expert Elite program is made up of customers that help other customers by sharing knowledge and exemplifying an engaging style of collaboration. To learn more, please visit our Expert Elite website.
Need installation help?

Start with some of our most frequented solutions or visit the Installation and Licensing Forum to get help installing your software.