我在 vbscript 中有以下代码:
Set ExcelObject=CreateObject("Excel.Application")
ExcelObject.visible=False
ExcelObject.WorkBooks.Add
ExcelObject.Sheets(1).Cells(1,1).value="1"
ExcelObject.Sheets(1).Cells(1,2).value="2"
ExcelObject.Sheets(1).Cells(1,3).value="3"
ExcelObject.Sheets(1).Cells(1,4).value="4"
ExcelObject.Sheets(1).Cells(2,1).value="5"
ExcelObject.Sheets(1).Cells(2,2).value="6"
ExcelObject.Sheets(1).Cells(2,3).value="7"
ExcelObject.Sheets(1).Cells(2,4).value="Y"
For x=0 to testData.Count-1
ExcelObject.Sheets(1).Cells(x+3,1).value=testData(x)
ExcelObject.Sheets(1).Cells(x+3,2).value="Constant"
ExcelObject.Sheets(1).Cells(x+3,4).value="Y"
Next
ExcelObject.Activeworkbook.Sheets(1).Name = "Name"
ExcelObject.Activeworkbook.SaveAs(path+"Data.xls")
ExcelObject.Quit()
Set ExcelObject=Nothing
尽管如此,当我使用 Excel 打开此电子表格时,我收到以下错误: “Data.xls”的文件格式和扩展名不匹配。文件可能已损坏或不安全...
此外,我无法从 UFT HP 导入此数据表。我相信这可能是因为 Excel 文件的生成方式存在问题。
我可以做什么来修复它?
最佳答案
您需要使用xlExcel8的FileFormat另存为。 xlExcel8 相当于 56(因为 VB 脚本没有 xlExcel8 引用)。
ExcelObject.Activeworkbook.SaveAs(path+"Data", 56)
不要添加扩展名。 Excel 会根据文件类型参数添加正确的文件类型。
关于excel - 在 vbscript 中创建 Excel 文件会生成损坏的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45741820/