我正在尝试使用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
如果我使用此脚本任务运行我的包,我将收到错误
任何人都可以解决这个问题吗?
答案 0 :(得分:0)
我试图删除内容的某个范围(A2:BC2000)
在您的代码中,您有以下几行:
Wexcel.DisplayAlerts = False
sheet.Delete()
Wexcel.DisplayAlerts = True
这三行删除了工作表,而不是范围。
如果您只想清除指定范围的内容,请使用:
sheet.Range("A2:BC2000").ClearContents
希望这有帮助