【问题标题】:Display message box only if cells start with ECH仅当单元格以 ECH 开头时才显示消息框
【发布时间】:2023-03-30 11:25:01
【问题描述】:

这是一段较大代码的片段——我希望它搜索我的电子表格的行并仅当列 R 和 T 中的单元格都以 ECH开始 时显示消息框.目前代码工作得很好,但它只在单元格值为“ECH”时显示。

我在论坛上发现了几个类似的问题,但不知道如何将它们直接应用于我的情况。如果有人可以推荐如何指定我只想要以“ECH”开头的单元格,那就太好了。谢谢!

Dim i As Long
i = 2
Do While Cells(i, "F").Value <> ""
  If Cells(i, "R").Value = "ECH" And Cells(i, "T").Value = "ECH" Then
    MsgBox ("YES")
    Else
    MsgBox ("NO")
  End If
  i = i + 1
Loop

【问题讨论】:

    标签: vba loops if-statement


    【解决方案1】:

    只需更改此行:

    If Cells(i, "R").Value = "ECH" And Cells(i, "T").Value = "ECH" Then
    

    这样:

    If Cells(i, "R").Value Like "ECH*" And Cells(i, "T").Value Like "ECH*" Then
    

    当使用关键字Like 时,您可以在比较中使用通配符。

    在比较字符串与= 时,它们必须完全相同才能返回True,并且不允许使用通配符。在这种情况下,* 被视为普通字符。

    【讨论】:

    • 太棒了,非常感谢!我试着四处寻找这些通配符的列表,但运气不佳。你知道我在哪里可以找到关于它们的更多信息吗?
    猜你喜欢
    • 2022-10-24
    • 2013-04-04
    • 1970-01-01
    • 1970-01-01
    • 2014-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多