第1个回答 推荐于2017-11-26
楼主你好,我给你想了个有效的办法
首先全选,然后选择性粘贴,只粘贴数值,这样就能在不改变任何东西的情况下去掉公式,只留下数值了,楼主快去试一试吧
Cells.Select
'全选
Selection.Copy
'复制
Selection.PasteSpecial Paste:=xlPasteValues
'选择性粘贴,只粘贴数值,去掉公式,不破坏格式
ActiveWorkbook.SaveAs Filename:="C:\Noformula.xls"
这个只是基本步骤
当然了,如果只这样的话,那么原来表格里面的公式也没了,楼主根据自己的具体情况稍微一修改就行了
楼主,写完之后我又看了看,觉得这样不能去掉宏,只能去掉公式,于是我又写了一段,这段的思路如下:
新建一个工作簿,然后选择性的把数据粘贴过去,然后保存,这样的话就可以在不破坏任何东西的情况下去掉公式和宏(vba代码)了
代码如下:
Cells.Select
'全选
Selection.Copy
'复制
Dim xlApp As Excel.Application
'创建一个新的excel
Dim xlBook As Excel.Workbook
Dim xlSheet1 As Excel.Worksheet
Set xlApp = CreateObject("Excel.Application")
'创建EXCEL对象
Set xlBook = xlApp.Workbooks.Add
Set xlSheet1 = xlBook.Worksheets("sheet1")
'设置活动工作表
xlApp.DisplayAlerts = False
'关闭警告
xlApp.Visible = True
'设置EXCEL对象可见
xlSheet1.Activate
'激活新的excel工作表
xlSheet1.Cells.PasteSpecial Paste:=xlPasteValues
'选择性粘贴,只粘贴数值,去掉公式,不破坏格式
xlBook.SaveAs Filename:="C:\Noformula.xls"
'楼主,这个保存路径名称你自己改
msgbox "文件保存为C:\Noformula.xls"
xlApp.DisplayAlerts = True
xlBook.Close
'关闭工作表
xlApp.Quit
'退出excel程序
楼主,我写得很辛苦哦,我女朋友给我聊qq我都没理她本回答被网友采纳