vb+excel2003中另存为excel,“类workbook的saveas方法无效”

DimExcelVersionAsStringDimOsVerSionAsStringDimmyFileNameAsStringDimxlsAppAsObject'定义E... Dim ExcelVersion As String
Dim OsVerSion As String
Dim myFileName As String
Dim xlsApp As Object '定义EXCEL、ET类
Dim xlsBook As Object '定义工件簿类
Dim xlsSheet As Object '定义工作表类
Set xlsApp = CreateObject("Excel.Application")
ExcelVersion = xlsApp.Version
myFileName = App.Path & "\SaveAs2003(" & ExcelVersion & ").xls"
OsVerSion = xlsApp.OperatingSystem

xlsApp.EnableEvents = False '禁用所有事件
xlsApp.DisplayAlerts = False '提示消息不显示
xlsApp.ScreenUpdating = False '关闭屏幕刷新

Set xlsBook = xlsApp.Workbooks.Open(App.Path & "\Statements.xlt")
Set xlsSheet = xlsBook.Worksheets("Sheet1")
xlsSheet.Activate
xlsSheet.range("B5").Value = 54440.04
xlsSheet.range("A2").Value = 65854.95
If Dir(myFileName) <> "" Then
Kill myFileName
End If

xlsBook.SaveAs myFileName, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False

xlsApp.Quit

xlsApp.EnableEvents = True '禁用所有事件
xlsApp.DisplayAlerts = True '提示消息不显示
xlsApp.ScreenUpdating = True '关闭屏幕刷新

Set xlsSheet = Nothing
Set xlsBook = Nothing
Set xlsApp = Nothing
展开
 我来答
lgf126
2014-07-26 · TA获得超过1101个赞
知道小有建树答主
回答量:1077
采纳率:33%
帮助的人:461万
展开全部
xlsBook.SaveAs myFileName
直接使用就好,后面的那些参数可以省略,都是默认值
另外,请检查myFileName这个字符变量的值,该值必须要符合目录命名的规则要求!!!
另外如果目标目录是服务器所在目录,请确认目标目录的读写权限!
其实本地目录也是一样,目录权限!
还有
If Dir(myFileName) <> "" Then
Kill myFileName
End If
这段也可以删了,另存为会覆盖目标文件,不需要再删除
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
TableDI
2024-07-18 广告
在上海悉息信息科技有限公司,我们深知Excel在数据处理中的重要作用。在Excel中引用不同工作表(sheet)的数据是常见的操作,这有助于整合和分析跨多个工作表的信息。通过在工作表名称前加上感叹号“!”,您可以轻松地引用其他工作表中的数据... 点击进入详情页
本回答由TableDI提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式