Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 6938|回复: 9

[已解决]关于VBA新建工作簿保存文件打开不兼容的问题

[复制链接]
发表于 2013-6-25 15:44 | 显示全部楼层 |阅读模式
本文用vba代码新建一个工作簿,但是保存的文件在打开时时候出现如下图错误,换个电脑打开,是一堆乱码,请问各位老师这个是什么原因。

Dim WBook As Workbook, WSheet As Worksheet
    Set WBook = Workbooks.Add
    Set WSheet = WBook.Worksheets.Add
    WSheet.Name = "招商批量文件"
    WSheet.Range("a1").Value = "业务参考号"
    WSheet.Range("b1").Value = "收款人编号"
WBook.SaveAs Filename:="C:\Documents and Settings\Administrator\桌面\招商批量文件.xls"
WBook.Save
WBook.Close
End Sub


最佳答案
2013-6-25 15:54
WBook.SaveAs Filename:="C:\Documents and Settings\Administrator\桌面\招商批量文件.xls" ,FileFormat:=xlExcel8

WBook.SaveAs Filename:="C:\Documents and Settings\Administrator\桌面\招商批量文件.xls" , FileFormat:=xlWorkbookNormal

都是可以的,但在不同版本下,有时可能还是要注意下。
11.jpg
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-6-25 15:50 | 显示全部楼层
回复

使用道具 举报

发表于 2013-6-25 15:54 | 显示全部楼层    本楼为最佳答案   
WBook.SaveAs Filename:="C:\Documents and Settings\Administrator\桌面\招商批量文件.xls" ,FileFormat:=xlExcel8

WBook.SaveAs Filename:="C:\Documents and Settings\Administrator\桌面\招商批量文件.xls" , FileFormat:=xlWorkbookNormal

都是可以的,但在不同版本下,有时可能还是要注意下。
回复

使用道具 举报

 楼主| 发表于 2013-6-25 15:56 | 显示全部楼层
FileFormat:=xlExcel8 这个可以,基本兼容
感谢感谢
回复

使用道具 举报

发表于 2014-5-22 18:07 | 显示全部楼层
Sub B_文件夹中的表格汇总()
    Application.ScreenUpdating = False '句代码确实好用,以前都不懂的,每次运行一个小代码,感觉一直闪动,现在加入这一句就不会了!
   
    Dim strPath As String, strFName As String
   

   
    strPath = InputBox("输入你要汇总的表格的路径")    '获取汇总总表的路径
   
    Filename = strPath & "\" & "汇总表.xlsx"
    Workbooks.Add
    ActiveWorkbook.SaveAs Filename:=Filename, FileFormat:=xlExcel8
   
    strFName = Dir(strPath & "\*.xlsx") '获取当前路径的所有*.xls文件名,DIR(path)
   
    Set 汇总表 = Workbooks.Open(Filename)
   
    While strFName <> ""
        If strFName <> "汇总表" Then '如果文件的名称不等于汇总表的名称
            Set wbk = Workbooks.Open(strPath & "\" & strFName) '.open打开一个工作簿,返回给wbk
            
            wbk.Sheets("sheet2").Copy after:=汇总表.Sheets(ThisWorkbook.Sheets.count) '复制打开的表格到当前的表格thisworkbook,此时的thisworkbook仍为汇总表
            
            ThisWorkbook.Sheets("sheet2").name = Left(wbk.name, Len(wbk.name) - 4)
            
            wbk.Close False
        End If
        
        strFName = Dir '查找下一个目录
    Wend
   
    Application.ScreenUpdating = True
End Sub


帮我看看,我这个出啥问题了。
我试过加入fileformat了,但是还是哪个问题,打开提示文件受损。
回复

使用道具 举报

发表于 2014-5-22 18:08 | 显示全部楼层
hwc2ycy 发表于 2013-6-25 15:54
WBook.SaveAs Filename:="C:\Documents and Settings\Administrator\桌面\招商批量文件.xls" ,FileFormat:= ...

帮我看看,我这个出啥问题了。
我试过加入fileformat了,但是还是哪个问题,打开提示文件受损。
回复

使用道具 举报

发表于 2014-5-22 18:15 | 显示全部楼层
hwc2ycy 发表于 2013-6-25 15:54
WBook.SaveAs Filename:="C:\Documents and Settings\Administrator\桌面\招商批量文件.xls" ,FileFormat:= ...

我的excel版本是2007的,新建的后缀也是.xlsx
回复

使用道具 举报

发表于 2014-5-22 18:17 | 显示全部楼层
建立扩展名为xls的时候是没问题的
回复

使用道具 举报

发表于 2014-5-23 08:23 | 显示全部楼层
bluesky_on 发表于 2014-5-22 18:08
帮我看看,我这个出啥问题了。
我试过加入fileformat了,但是还是哪个问题,打开提示文件受损。

fileformat指定的什么值?
另外你可能要注意下,有时保存时会有提示文件受损的情况,我在10里有碰到过几次。


回复

使用道具 举报

发表于 2014-5-23 10:13 | 显示全部楼层
07的话,你可以录制宏,分别另存为XLS,XLSX,XLSM这三种格式。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 12:20 , Processed in 0.561166 second(s), 15 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表