excel - 如何在我的工作簿中的每张纸上运行此 VBA 代码?

标签 excel vba

我有一个包含 60 张纸的工作簿,每张纸的格式都相同。我需要在每个单元格中合并一堆单元格,所以我有这段代码可以做到这一点。有没有一种方法可以在整个文档中运行它,而不必在每张纸上单独运行它?

Sub MrgeColumns()
    Range("T3:T209").Merge
    Range("AU3:AU209").Merge
    Range("BT3:BT209").Merge
    Range("CS3:CS209").Merge
    Range("DS3:DS209").Merge
    Range("ET3:ET209").Merge
    Range("FT3:FT209").Merge
    Range("GR3:GR209").Merge
    Range("HP3:HP209").Merge
    Range("IN3:IN209").Merge
End Sub

最佳答案

给它一个工作表参数,然后你可以使用循环调用它。

Sub MergeAll()
  Dim ws as Worksheet
  For each ws in ActiveWorkbook.WorkSheets
    MrgeColumns ws
  Next
End Sub


Sub MrgeColumns(ws as Worksheet)
  With ws
    .Range("T3:T209").Merge
    .Range("AU3:AU209").Merge
    .Range("BT3:BT209").Merge
    .Range("CS3:CS209").Merge
    .Range("DS3:DS209").Merge
    .Range("ET3:ET209").Merge
    .Range("FT3:FT209").Merge
    .Range("GR3:GR209").Merge
    .Range("HP3:HP209").Merge
    .Range("IN3:IN209").Merge
  End With
End Sub

关于excel - 如何在我的工作簿中的每张纸上运行此 VBA 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65747741/

相关文章:

excel - asp net core导出到Excel

Excel 无法插入超过 255 个字符?

excel - 将 MS Access 2010 表导出到 Excel 2010

C# Interop.Excel 找不到 dll

vba - 将项目添加到 VBA/VB6 集合时出错

c# - 尝试读取 Excel 文件中的值时无法在 C# 中找到方法 GetCellValue

arrays - 如何在 VBA 中设置 "jagged array"?

excel - 语言服务提交: Error '91'

excel - VBA - 在打开工作簿之前检查它是否受到保护

vba - 有没有办法执行单元格中包含的 VBA 代码?