【问题标题】:Add text to a cell in column X if match in column Y如果在 Y 列中匹配,则将文本添加到 X 列中的单元格
【发布时间】:2017-05-12 13:16:51
【问题描述】:

我正在尝试做以下事情:

我的文件有 2 列。

在“A”中是客户订购的产品的完整列表。

在“C”中是需要在“A”列中添加特定文本的产品列表,以防它们已被订购(遗憾的是无法在数据库中执行此操作)。

我不知道如何结束宏:

Sub SEARCH2()

    Dim CompareRange As Variant, x As Variant, y As Variant

    Set CompareRange = Range("A1:A500")
    Set CompareRange2 = Range("C3:C500")
    For Each x In CompareRange2
        For Each y In CompareRange
            If x = y Then x ????? 

'THERE I WANT TO SAY ADD THE TEXT "EXAMPLE" TO THE CELL

        Next y
    Next x
End Sub

有人可以帮忙结束这个宏吗?

最好的问候。

【问题讨论】:

  • 你的意思是如果C中的值是在A中找到的,你想将“Example”添加到C中的值,或者A,或者别的什么?
  • 是的,这就是重点。它与您编写的公式完美配合。我从没想过使用 Range 作为 Vairant。

标签: excel text cell add vba


【解决方案1】:

这是一个最好的猜测,但不清楚你在问什么。您不需要遍历这两个范围。

Sub SEARCH2()

Dim CompareRange As Range, CompareRange2 As Range, x As Range, y As Range, v As Variant

Set CompareRange = Range("A1:A500")
Set CompareRange2 = Range("C3:C500")

For Each x In CompareRange2
    v = Application.Match(x, CompareRange, 0)
    If IsNumeric(v) Then
        x.Value = x.Value & " EXAMPLE"
    End If
Next x

End Sub

【讨论】:

    【解决方案2】:

    您必须将变量 x, y 声明为范围

    Dim CompareRange As Variant, x As Range, y As Range
    If x = y Then x = "EXAMPLE"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-06
      • 1970-01-01
      相关资源
      最近更新 更多