.NET

Reply
Mentor
256 Posts
4 Kudos
Registered: ‎04-15-2011
Post 1 of 5
Accepted Solution

Check if file open

282 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
            Try
                Dim F As Short = FreeFile()
                FileOpen(F, sFile, OpenMode.Binary, OpenAccess.ReadWrite, OpenShare.LockReadWrite)
                FileClose(F)
            Catch
                Return True
            End Try
        End If
    End Function

 

 

Microsoft.VisualBasic.OpenMode.Binary

Distinguished Contributor
406 Posts
2 Kudos
Registered: ‎12-09-2003
Post 2 of 5

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*
1,569 Posts
171 Kudos
Registered: ‎10-08-2008
Post 3 of 5

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
        Try
            wbook = xlapp.Workbooks(filename)
        Catch
            isopen = False
        End Try
        Return isopen
    End Function

 

~'J'~

_____________________________________
C6309D9E0751D165D0934D0621DFF27919
Mentor
256 Posts
4 Kudos
Registered: ‎04-15-2011
Post 4 of 5

Re: Check if file open

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

Hi,

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*
1,286 Posts
37 Kudos
Registered: ‎06-21-2004
Post 5 of 5

Re: Check if file open

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

Microsoft.VisualBasic.OpenMode.Binary

---------------------------



(defun botsbuildbots() (botsbuildbots))
Post to the Community

Have questions about Autodesk products? Ask the community.

New Post