CreateEventProc вылетает на vb.net

Я хочу добавить событие на лист в Excel с помощью VB.net Я написал для этого следующий код Но я столкнулся с проблемой в указанной строке

Помогите, пожалуйста

эта программа вылетела в строке 22

Imports Microsoft.Office.Interop
Imports Microsoft.Vbe.Interop
Imports System.Runtime.InteropServices
Imports System.Text

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim excelApplication As New Excel.Application
        Dim excelWorkbooks As Excel.Workbooks = excelApplication.Workbooks
        Dim excelWorkbook As Excel.Workbook = excelWorkbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet)
        Dim excelWorkSheet As Excel.Worksheet = excelWorkbook.ActiveSheet

        excelApplication.Visible = True
        Dim VBComp As Microsoft.Vbe.Interop.VBComponent
        Dim CodeMod As Microsoft.Vbe.Interop.CodeModule
        Dim LineNum As Long

        VBComp = excelApplication.ActiveWorkbook.VBProject.VBComponents(excelWorkSheet.Index)
        CodeMod = VBComp.CodeModule
        With CodeMod
            LineNum = .CreateEventProc("Active", "Worksheet")'**Crash: Event handler is invalid**
            LineNum = LineNum + 1 : .InsertLines(LineNum, " ")
            LineNum = LineNum + 1 : .InsertLines(LineNum, "Msgbox(""Hi"")")
        End With
        'Save and quit
        excelWorkbook.SaveAs("F:\MyVBAExcelFile.xlsm", Excel.XlFileFormat.xlOpenXMLWorkbookMacroEnabled)

        excelApplication.Quit()

        Marshal.ReleaseComObject(excelWorkbooks)
        Marshal.ReleaseComObject(excelWorkbook)
        Marshal.ReleaseComObject(excelApplication)

    End Sub

End Class
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
0
0
70
1

Ответы 1

Активный - это состояние, а не событие, вы должны попробовать Активировать, чтобы он заработал. Ошибка возникает, когда событие не существует (например, Active).

как его активировать?

SNasrZ 12.07.2018 08:23

измените "Активный" на "Активировать"

AndrewE 12.07.2018 08:24

Другие вопросы по теме