CreateObject(" Excel.Application")不起作用

时间:2016-05-10 18:47:06

标签: excel vbscript ssis

作为背景,我试图删除我的2007 Excel工作簿的第二行。我没有在服务器上安装MS Office,并且不可能安装它们。使用互操作程序集是没有用的,因为我无法安装办公室。 当我尝试使用VB脚本(下面)来操作文件时,它会给我带来各种错误:

Dim filename As String
Dim appExcel As Object
Dim newBook As Object
Dim oSheet1 As Object

appExcel = CreateObject("Excel.Application")
filename = "C:\test.xls"
appExcel.DisplayAlerts = False

newBook = appExcel.Workbooks.Open(filename)
oSheet1 = newBook.worksheets("Sheet1")
oSheet1.Range("A2").Entirerow.Delete()


newBook.SaveAs(filename, FileFormat:=56)
appExcel.Workbooks.Close()
appExcel.Quit()

我有点认为没有excel和程序集,我无法操纵文件。有没有其他方法来实现这一目标?我不知道我可以尝试使用哪些组件。谢谢你的阅读。

1 个答案:

答案 0 :(得分:2)

不,如果没有所需的Excel对象库,您就无法通过脚本语言以这种方式成功删除Excel文件中的行。

您可以使用ADO和SQL 查询工作簿,但这不允许您删除行。

*通过Excel文件,我的意思是你正在使用的.xls文件 - .xlsx文件(Excel 2007和更新版本)实际上只是压缩的XML文件,如果你知道的话可以这样编辑 - 如何