如何查找多个单元格并在Excel中更改其值

时间:2018-11-02 13:47:49

标签: excel vba

我想找到一个单元格并在另一个单元格中更改其值,但是如何为多个单元格呢?

Sub replace_sales()

Dim ws As Worksheet

For Each ws In ActiveWorkbook.Worksheets
    For i = 1 To 10000
        If ws.Cells(i, 1) = "1932597" Then
            ws.Cells(i, 9) = "0"
        End If
    Next i
Next ws

End Sub

1 个答案:

答案 0 :(得分:1)

听起来像您想要的Select Case。在案例部分中,您可以指定要测试的数字以及每种情况下要做什么。同一行上可以有多个值。如果使用数字,则不需要“”。这些用于字符串文字。

Option Explicit
Public Sub replace_sales()
    Dim ws As Worksheet
    For Each ws In ActiveWorkbook.Worksheets
        For i = 1 To 10000
            Select Case ws.Cells(i, 1)
            Case 1932597, 1234, 123
                ws.Cells(i, 9) = 0
            Case 12345
               ws.Cells(i, 9) = 1
            End Select
        Next
    Next ws
End Sub