Odlišnosti musím poladit, aby pracovalo dle příslušné verze, jinak skvělé. Např. AfterCalculate ve verzi 2007, ale ve verzi 2003 SheetCalculate... Např. událost NewWokbook je stejná a pro obě verze lze použít: Dim AppEventsNewWorkbookDelegateType As Type = ExcelAssembly.GetType("Microsoft.Office.Interop.Excel.AppEvents_NewWorkbookEventHandler")
Dim mi As MethodInfo = Me.GetType().GetMethod("Application_NewWorkbook", BindingFlags.NonPublic Or BindingFlags.Instance)
Dim AppEventsNewWorkbookDelegate As [Delegate] = [Delegate].CreateDelegate(AppEventsNewWorkbookDelegateType, Me, mi)
AppEventsType.GetEvent("NewWorkbook").AddEventHandler(Excel, AppEventsNewWorkbookDelegate) Workbook as Object v deklaraci metody to překousne. Asi Vám to moc nepomůže, ale co kdyby. Naopak, velmi jste mi pomohl a moc Vám děkuji za Vaši odpověď.
|