【问题标题】:Deleting content in multiple sheets - Excel VBA删除多张工作表中的内容 - Excel VBA
【发布时间】:2013-06-17 06:56:11
【问题描述】:
Private Sub CommandButton2_Click()

sheetNo = 1

With Worksheets("Sheet" & sheetNo)
.Range("A1:B12").ClearContents
End With
sheetNo = sheetNo + 1

End Sub

假设我有 10 张工作表(Sheet1、Sheet2、Sheet 3、........),当我单击 CommandButton2 时,它应该删除 A1:B12 范围内的任何内容。但是这段代码只删除了 Sheet1 中的内容。谁能告诉我为什么以及哪里出错了?

谢谢。

【问题讨论】:

  • 将代码包含在forwhile 循环中怎么样?
  • @shahkalpesh 你想帮我举个例子吗?谢谢
  • 我强烈建议您先学习语言结构。你的问题很简单,任何人都可以回答。然而,这不应该阻止你超越答案(尤其是基本的东西)。

标签: vba excel


【解决方案1】:

how to use loops
这些只是 3 个简单的循环示例(所有 3 个都在做同样的事情),以便您更好地了解循环的工作原理

Private Sub CommandButton2_Click()

    ' using for each loop
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Sheets
        ws.Range("A1:B12").ClearContents
    Next

    ' using for loop with an iterator
    Dim i As Long
    For i = 1 To Sheets.Count
        Sheets(i).Range("A1:B12").ClearContents
    Next i

    ' using do while loop
    i = 1
    Do While i <= Sheets.Count
        Sheets(i).Range("A1:B12").ClearContents
        i = i + 1
    Loop

End Sub

【讨论】:

  • 感谢您为我提供多种视角来处理我的问题。非常感谢。
猜你喜欢
  • 2023-01-27
  • 1970-01-01
  • 1970-01-01
  • 2018-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-04
  • 1970-01-01
相关资源
最近更新 更多