使用 SSIS 上的脚本任务删除 Excel 上的特定范围的内容

Delete Certain Range of Content on Excel Using Script Task on SSIS

我正在尝试使用 SSIS 上的脚本任务删除 Excel 上某些范围 (A2:BC2000) 的内容,或者你们是否提供了任何替代方法。 这是我使用的代码

Public Sub Main()
        Dim Wexcel As Microsoft.Office.Interop.Excel.Application = New Microsoft.Office.Interop.Excel.Application()
        Dim Wb As Workbook = Wexcel.Workbooks.Open("C:\Users\Shawn\Documents\Depart.xlsx")
        Dim wf As WorksheetFunction = Wexcel.WorksheetFunction
        Dim sheet As Worksheet

        For Each sheet In Wexcel.Worksheets
            If wf.CountA(sheet.Range("A2:BC20000").Value) > 0 Then
                Wexcel.DisplayAlerts = False
                sheet.Delete()
                Wexcel.DisplayAlerts = True


            End If
        Next sheet
        Dts.TaskResult = ScriptResults.Success
    End Sub

如果我 运行 我的包裹有这个脚本任务,我会收到下面的错误

谁能解决这个问题?

我正在尝试删除某些范围 (A2:BC2000) 的内容

在你的代码中,你有这些行:

 Wexcel.DisplayAlerts = False
sheet.Delete()
Wexcel.DisplayAlerts = True

这 3 行删除了 sheet,而不是范围。

如果只想清除指定范围内的内容,则使用:

sheet.Range("A2:BC2000").ClearContents

希望对您有所帮助