excel - 为所有工作表重复一个宏
问题描述
Sub Format()
Dim LastRow As Long
Columns("A:E").Select
Range("A3").Activate
Columns("A:E").EntireColumn.AutoFit
Rows("7:7").Select
Selection.Delete Shift:=xlUp
Range("B16").Select
LastRow = Range("D9").End(xlDown).Row
Cells(LastRow + 1, "D").Formula = "=SUM(D9:D" & LastRow & ")"
End Sub
我正在处理需要向具有相同结构的不同数量数据表的个人报告的工作表。如果我需要为所有工作表重复代码怎么办。我是 stackoverflow 的追随者,从这个论坛学到了很多东西。
谢谢你凯沙夫
解决方案
遍历工作表
Sub Format()
Dim LastRow As Long, sh As Worksheet
For Each sh In Sheets
With sh
.Columns("A:E").EntireColumn.AutoFit
.Rows("7:7").Delete Shift:=xlUp
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
.Cells(LastRow + 1, "D").Formula = "=SUM(D9:D" & LastRow & ")"
End With
Next sh
End Sub
循环浏览除一张以外的工作表
Sub LoopSheetsExceptOne()
Dim LastRow As Long, sh As Worksheet, ws As Worksheet
Set ws = Sheets(1)
For Each sh In Sheets
If sh.Name <> ws.Name Then
With sh
.Columns("A:E").EntireColumn.AutoFit
.Rows("7:7").Delete Shift:=xlUp
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
.Cells(LastRow + 1, "D").Formula = "=SUM(D9:D" & LastRow & ")"
End With
End If
Next sh
End Sub
推荐阅读
- java - 子文档上的 Spring Mongo 查询示例
- xml - Google 联系人 API 中使用的 Google 数据语法的正确 Content-Type 是什么?
- java - Javamail getContent() 致命错误 java.lang.NoClassDefFoundError
- oracle - 在 Oracle EBS v12 中选择位置时出错
- javascript - 编辑器错误 - 未找到此类编辑器:制表符代码中的 dateEditor
- c# - 在 .NET-core 中找不到 TestContext 类
- android - 无法滚动到 RecyclerView 的底部
- android - event.params 评估为未定义;无法使用 Cloud Functions 访问 Firebase 实时数据库中的 event.params.post
- flutter - 如何在没有等待的情况下获得未来价值?
- python - 如何在 python 数据框的单列中划分元素?