Vba 在选定单元格中运行宏

Vba 在选定单元格中运行宏,vba,excel,cell,selected,Vba,Excel,Cell,Selected,我需要这个宏将“Pass”应用到我选择的每个单元格中。目前,即使我选择了多个单元格,它也只会在我选择的第一个单元格上写入Pass 我对编码这件事还很陌生,所以我知道我做错了什么 Dim rngMyRange As Range Dim cell As Range Set rngMyRange = Selection For Each cell In rngMyRange.Cells ActiveCell = "Pass" Next cell End Sub 使用For Each循环时。变量

我需要这个宏将“Pass”应用到我选择的每个单元格中。目前,即使我选择了多个单元格,它也只会在我选择的第一个单元格上写入Pass

我对编码这件事还很陌生,所以我知道我做错了什么

Dim rngMyRange As Range
Dim cell As Range

Set rngMyRange = Selection
For Each cell In rngMyRange.Cells
ActiveCell = "Pass"
Next cell 

End Sub

使用For Each循环时。变量(在本例中为
cell
)表示迭代的每个单元格。因此,将循环更改为:

For Each cell In rngMyRange.Cells
    cell = "Pass"
Next cell
我们应该做到这一点


ActiveCell仅指实际的活动单元格,循环不会更改哪个单元格处于活动状态。在循环中激活一个单元格被认为是不好的形式,因为它会减慢代码的速度。

ActiveCell
更改为
cell
哈哈。非常感谢:)这么小的变化,解决了一切!有没有办法选择您的答案为最佳答案,而我的案例已解决?我将作为答案发布。现在只需单击答案旁边的绿色复选标记,它将被标记为已回答。再次感谢:)