VBA:如果然后在那之后有2条语句

时间:2019-02-28 16:12:09

标签: excel vba

我该如何编写if if语句,如果满足,则将完成2个操作?例如:

Sub button()

If Range("B17").Value = 1 Then
Range("C3:F3") = Range("C21:F21").Value And 
Range("C10:F10") = Range("C22:F22").Value

Else

...

End If 

End Sub

2 个答案:

答案 0 :(得分:5)

在VBA中,And是一个logical connective,其中且A And BTrue都是{{ 1}}。这不是标点符号,即“先执行A然后执行B”。您只需删除A

B

没有问题。

此外,请注意True子句在VBA中是可选的。如果您只想在某些条件为真的情况下执行两个操作,而当错误为假时您没有其他选择,则可以完全跳过And部分。

答案 1 :(得分:2)

尝试:

Option Explicit

Sub button()

    'First declare your workbook & worksheet
    With ThisWorkbook.Worksheets("Sheet1")
        If .Range("B17").Value = 1 Then
            .Range("C3:F3").Value = .Range("C21:F21").Value
            .Range("C10:F10").Value = .Range("C22:F22").Value
        Else

        End If

    End With

End Sub