小编致力于为大家奉献最有效的经验 , 让大家能够解决掉问题 , 但是大家也都知道 , 每个人遇到的情况都是不一样的 , 大家在看小编经验的同时 , 除了跟随操作 , 也需要自己的思考 , 举一反三的解决问题 , 这样才会变得更加有内涵 , 成为和小编一样的经验达人 。 excel中使用vba历遍工作表中所有工作薄的方法 , 这里 , 让小编给大家介绍一下 。
文章插图
工具/原料excel2016
方法/步骤1首先我们打开一个工作样表作为例子 。
文章插图
2打开vba编辑器 , 并且插入一个新的模块 , 并输入以下代码:
Sub 历遍单元格公式()
Dim wb1 As Workbook, ws1 As Worksheet
Dim rng As Range, rng1 As Range
【excel中使用vba历遍工作表中所有工作薄的方法】
For Each wb1 In Workbooks
With wb1
If MsgBox("是否删除工作簿"" & wb1.Name & ""中的所有公式?", _
vbQuestion + vbYesNo) = vbYes Then
For Each ws1 In .Worksheets
On Error Resume Next
Set rng1 = ws1.UsedRange.SpecialCells(xlCellTypeFormulas)
'获取公式单元格区域引用
Next
If
With
Next
Sub
文章插图
3这里我们定义wb1变量为工作表 , ws1变量为工作薄 , rng变量为活动单元格区域 。
文章插图
4历遍工作表中所有的工作薄 , with wb1是指代当前工作表 , 简化了后面的代码 , 完整的写出来是这样的wb1.worksheets. vbQuestion是在msgbox中显示一个问号符号 。 而vbyesno是显示两个确定选择按钮 。
文章插图
5接下来历遍工作表中的所有工作薄 。 On Error Resume Next语句的含义是如果发生错误继续执行而不是中断过程 。 set rng1变量为所有的含有公式的单元格 。
文章插图
6我们试运行这个宏过程 , 得出的结果并没有输出 。 我添加一个输出语句msgbox = ws1.name , 大家看一下结果 。
文章插图
7先写到这里了 , 谢谢大家的观看 。
祝大家生活愉快 。
小编还有许多其他的经验可以观看 , 如果无法解决问题可以联系小编进行咨询 。
看不清楚图片的可以点击放大再看哦 。
注意事项msgbox代码中有一处错误 , 大家可以试着找一下 。
推荐阅读
- 使用文档类在Flash中缩放文本
- excel中教大家使用vba去控制窗体大小
- 查询wifi密码方法
- excel中的数字上标使用详解
- ae怎么清理缓存
- QQ摄像头不能使用的解决办法
- 2022如何挖掘投资机会?业内:股市紧随碳中和主线 家庭理财聚焦中低风险资产
- 《熟经济》:写给中国普通家庭2022年度的财富指南
- 中国居民家庭理财环境迎来大变局
- HTML中frameset框架标签怎么使用