Excel-VBA宏,如果

问题描述 投票:0回答:1

我是VBA的新手,我正在尝试做简单的宏。我需要我的宏才能像这样工作:

  1. 如果E5单元格中有一个大于1的值,则显示一个消息框,其中包含诸如“您的值是” /从E5中获取值的文本/

  2. 我想对E列中的所有单元格重复此条件。

首先,我从可行的方法开始:

Sub test()
    If Range("E5").Value > "1" Then
        MsgBox "Your value is" (here I don't know how to import real value from E5)
    End If
End Sub

然后,我可以单击“运行”,该宏正常运行(这意味着“形式正常”,因为这还不是目标效果)。但是,仅当我单击“运行”时,此宏才起作用,并且我希望它始终起作用,即使我关闭Excel并再次打开它也是如此。将宏分配给自动形状要容易得多,但在这里我跌倒了:(

if-statement macros range cell messagebox
1个回答
1
投票
请注意,"1"是文本/字符串,而不是数字。因此,如果您想将数值与><进行比较,则需要输入

If Range("E5").Value > 1 Then

或者您没有得到想要的结果。

要在您的消息框中输入值,您需要使用&符号将其连接到文本中。

MsgBox "Your value is " & Range("E5").Value

© www.soinside.com 2019 - 2024. All rights reserved.