我的程序有个界面,通过选择时间段计算结果,然后把结果保存到EXCEL文件中。我保存的EXCEL文件的文件名是以时间段为文件名的。
我现在是这样写的
Dim zsbexcel As excel.Application
Dim zsbworkbook As Workbook
Set zsbexcel = New excel.Application
zsbexcel.Visible = False
zsbexcel.SheetsInNewWorkbook = 1
Set zsbworkbook = zsbexcel.Workbooks.Add
zsbexcel.Sheets(zsbexcel.Sheets.Count).Name = "1.xls"
With zsbexcel.ActiveSheet
.Cells(14, 1).Value = "aaaaa"
.Cells(15, 1).Value = "bbbbb"
......(具体附值就不细写了)
End With
dpath = Trim(Text17.Text) ‘这是我保存的路径
pnum = Len(dpath)
If Right(dpath, 1) = "\" Then dpath = Left(dpath, pnum - 1)
ActiveWorkbook.Close True, dpath & "\" & ds & "--" & de (ds,de分别是每次计算前附值,这些都和出错没关系)
zsbexcel.Quit
Set zsbexcel = Nothing
保存第一个文件不会提示错误,但如果时间段不变,再保存就会提示:“对象变量或者WITH块变量未设置”,如果我改变时间段计算后,等于是保存不同文件名的EXCEL文件了,但还是会提示“是否保存对“book2”的更改”,为什么这样的呢,我保存的文件名和我第一个并不重复啊?
提示错误的行是:ActiveWorkbook.Close True, dpath & "\" & ds & "--" & de
谢谢