CodieCalm Ответов: 1

Ошибка: удаление строки и невозможность открыть файл .xlsx с помощью excel и VB.NET


Ребята помогите мне исправить этот код заранее спасибо
Это делает меня головной болью, чтобы узнать, но не могу найти легкий путь
Я хочу удалить строку, где я могу выбрать ячейку в datagridview для удаления в Excel 2010, но всегда показывать ошибку. спасибо снова.

Что я уже пробовал:

    Dim ExcelApp As Excel.Application
    Dim ExcelWorkBk As Excel.Workbook
    Dim ExcelWorkSht As Excel.Worksheet
Public Sub ExcelRemoveRow(ByVal FileName As String, ByVal SheetName As String, ByVal RowIndex As Int32)
        ExcelApp = New Excel.Application
        Try
            'This code are another form and this is my sample code
            'Filename = GetAppPath() & "\backup\cbms.xlsx"
            'ExcelRemoveRow(Filename, "enumeratorrecord", DataGridView1.CurrentRow.Cells(0).Value)

            ExcelWorkBk = ExcelApp.Workbooks.Open(FileName) 'error code here

            '--------------------------ERROR-------------------------------------
            'Excel cannot open the file 'cbms.xlsx' because the file format 
            'or file extension is not valid. Verify that the file has not been 
            'corrupted and that the file extension matches the format of the file.
            ExcelWorkSht = ExcelWorkBk.Worksheets("enumeratorrecord")

            'Dim empty As Integer
            'For empty = i + 1 To 2000
            ExcelWorkSht.Rows(RowIndex).Delete()
            'Next
            ExcelWorkBk.Save()
            grideview()
            MessageBox.Show("Record Deleted Successfully", "Process Complete", MessageBoxButtons.OK, MessageBoxIcon.Information)
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        Finally
            If Not IsNothing(ExcelWorkBk) Then
                ExcelWorkBk.Close()
            End If
            ExcelApp.Quit()
        End Try
    End Sub

1 Ответов

Рейтинг:
0

Maciej Los

Ты забыл сдать экзамен Shift аргумент в этой строке:

ExcelWorkSht.Rows(RowIndex).Delete(_Here_)

Видеть: Диапазон.Метод Удаления(Объекта) (Microsoft.Офис.Взаимодействие.Excel) | Microsoft Docs[^]


CodieCalm

его C# нет vb.net

Maciej Los

Что ж...
Перейдите к началу страницы. Посмотрите на правый верхний угол. Существует небольшой переключатель между языками (C#, VB).