EXCEL VBA 复制,粘贴数值

一个工作薄里面有10来张工作表,每个表里面都有公式
现在需要做个宏按钮,使得每个工作表都复制然后选择性粘贴数值,使得表里面的公式都变成数值。
哪位达人帮忙写下啊。。。

1、打开EXCEL,导入要操作的文字或素材。

2、首先菜单栏“插入”—“形状”。

3、设置按钮格式。

4、进入VBA窗口,插入模板,输入代码:Sub 复制()Cells(14, 3).Select ‘选择网页链接所在单元格Selection.Copy ’复制网页链接End SubSub 粘贴()Dim rng As RangeSet rng = Selection

ActiveSheet.Paste‘粘贴End Sub。

5、回到Excel窗口,点击“复制链接”按钮,可以看到链接已经复制到了剪贴板中。

6、选择任一个空单元格,点击“粘贴”按钮即可。

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-10
(1)使用菜单“工具”->“宏”->“Visual Basic 编辑器”打开Visual Basic 编辑器。
在ThisWorkbook中录入以下函数:

Sub 数值化()
' 保存当前表单信息
Set sh = ActiveSheet

' 所有表单公式数值化
For Each Sheet In Sheets
Sheet.Select
Cells.Select
Cells.Copy
Cells.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Range("a1").Select
Next

' 恢复当前表单选择
sh.Select
End Sub

(2)使用窗口工具条上的“按钮”创建按钮,提示链接宏时选择“ThisWorkbook.数值化”。
若已经做好按钮,则右键点击按钮选择“指定宏”后,选择“ThisWorkbook.数值化”。
(3)右键点击创建的按钮,选择“编辑文字”,修改按钮上显示的文字,例如:“公式数值化”。

大功告成。此时左键点击创建的“公式数值化”按钮,将会把每个工作表都复制然后选择性粘贴数值,使得表里面的公式都变成数值。操作结束后,将回到操作前的表单界面。
第2个回答  推荐于2017-11-28
自己录制一个宏,然后改改就可以了啊。
Sub Pspec()
For i = 1 To 10
Sheets(i).Activate
Cells.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("a1").Select
Next i
End Sub本回答被提问者和网友采纳
第3个回答  2012-12-10
Sub test()
For i = 1 To n
Sheets("Sheet" & i).Select
Cells.Select
Cells.Copy
Cells.PasteSpecial Paste:=xlPasteValues
Next

End Sub

其中n表示你的工作表的个数
第4个回答  2012-12-10
这个宏你可以自己录制一下呀!
相似回答