2014-07-11 4 views
1

을 발사하지 않음 :엑셀 VSTO, 통합 문서 열기 이벤트 내가 VB.Net에서 Excel 추가 기능 Proect에서 아래의 코드를 가지고

Public Class ThisAddIn 

    Private Sub Application_WorkbookOpen(Wb As Microsoft.Office.Interop.Excel.Workbook) Handles Application.WorkbookOpen 
     Beep() 
     MsgBox("fad") 
    End Sub 
End Class 

이는 VB 편집기에 의해 생성되었습니다. 통합 문서를 열 때 사용하는 이벤트 처리기입니다. F5 키를 눌러 코드를 실행하면 이벤트 처리기가 실행되지 않는 것 같습니다. 어떤 아이디어?

편집 : 열리는 통합 문서에서 통합 문서를 열면 원본 통합 문서 자체에는 실행되지 않지만 이벤트 처리기는 실행됩니다.

답변

1

글쎄, 당신은 당신이 기존 통합 문서 열 경우에만 이벤트가 호출 될 때, 엑셀 시작시 열기 이벤트가 호출되지 않습니다 알고 있습니다.

이벤트는 ** NewWorkbook * 흥미롭게 중 하나를 해고하지 않습니다 ...

내가 어떻게 취급하지만 1 분 테스트 말을하는 방법을 발견

는, 한번 시도해있다 저희에게 알려주십시오.

Public Class ThisAddIn 
    Private Sub ThisAddIn_Startup() Handles Me.Startup 
     AddHandler Globals.ThisAddIn.Application.WorkbookOpen, AddressOf MyWorkbookOpenEvent 
     AddHandler Globals.ThisAddIn.Application.NewWorkbook, AddressOf MyNewWorkbookEvent 
     If Globals.ThisAddIn.Application.Workbooks.Count = 1 Then MyWorkbookOpenEvent(Globals.ThisAddIn.Application.Workbooks(1)) 
    End Sub 

    Private Sub MyWorkbookOpenEvent(ByVal Wb As Microsoft.Office.Interop.Excel.Workbook) 
     System.Windows.Forms.MessageBox.Show("OPEN workbook event") 
    End Sub 

    Private Sub MyNewWorkbookEvent(ByVal Wb As Microsoft.Office.Interop.Excel.Workbook) 
     System.Windows.Forms.MessageBox.Show("NEW Workbook event") 
    End Sub 

    Private Sub ThisAddIn_Shutdown() Handles Me.Shutdown 
     RemoveHandler Globals.ThisAddIn.Application.WorkbookOpen, AddressOf MyWorkbookOpenEvent 
     RemoveHandler Globals.ThisAddIn.Application.NewWorkbook, AddressOf MyNewWorkbookEvent 
    End Sub 
End Class 
관련 문제