Excel中,如何用vba实现另存为工作表?(去掉公式)

我用公式和vba窗口输入填完了工作表, 现在我想实现另一个功能,点击保存按钮,将填好的工作表另存在我指定的地方(只要保存文本和单元格式样,不要公式和vba工程)该如何实现??

麻烦vba高手指点,或给我相关代码,搞定高分追加送上

1、首先,找到要进行操作的Excel表格,右键单击Excel图标,然后在弹出的右键菜单中选择打开命令。

2、从打开的工作簿左下角的工作表标签可知,该工作簿默认生成工作表为一个。

3、按下组合键Alt+F11,即可快速调出VBA窗口。

4、在VBA界面中单击菜单栏中的插入,选择模块命令,此时会弹出一个另存为的模块窗口。

5、在另存为的模块窗口中复制粘贴以下代码:

Sub New_worksheet()

Sheets(1).Select

Worksheets.Add

End Sub

则会另存为sheet2工作表了。

温馨提示:答案为网友推荐,仅供参考
第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我都没理她本回答被网友采纳
相似回答