카테고리 없음

[뛰어나다] 열려있는 Excel 통합 문서를 검색하는 절차 다시 작성

행복을전해요 2021. 2. 1. 22:03

당신이 Excel 인스턴스를 찾기 위해 노력하고 있어요 예외는 아마도 때문에입니다 CType실패하고 던지는 InvalidCastException. 캐스트를 피하면 (처음에) 피할 수 있습니다.

Dim xlObject As Object

Try
    'get an existing excel.application object
        xlObject = GetObject(, "Excel.Application")
        Catch ex As Exception
            ' Some other exception now
            
            End Try
            
            If Not xlObject Is Nothing Then ' Found something, make the cast
                xlApp = CType(xlObject, Application)
                Else ' Did not find anything, create new instance
                    xlApp = New Excel.Application
                    End If
                    

그리고 통합 문서가 있는지 확인하려면 해당 문서를 반복하고 이름을 확인하십시오.

Dim isWbOpen As Boolean
For i As Integer = 0 To xlApp.Workbooks.Count - 1
    If xlApp.Workbooks(i).Name = xlWBName Then
            isWbOpen = True
                    Exit For
                        End If
                        Next
                        
                        If isWbOpen Then
                            xlBook = xlApp.Workbooks(xlWBName & ".xlsx")
                            Else
                                xlBook = xlApp.Workbooks.Open(xlBookPath & "\" & xlWBName & ".xlsx")
                                End If
                                


출처
https://stackoverflow.com/questions/22049863