【发布时间】:2020-01-03 19:33:14
【问题描述】:
我想使用 VBA 向基于另一个单元格的单元格添加一个值,但我不确定如何。我已经在互联网上搜索过它但找不到任何东西。
我有一个表格,在 C 列上,如果任何单元格包含文本“MAM”(因为它可能有 MAM-565),则将单元格 A 的值更改为“错误”,但如果它包含“ NAC”,然后将值更改为“正确”。它应该与找到的文本在同一行。
另外,我想在每次填充 D 中的单元格时自动将日期添加到单元格 E。 这是我已经拥有的代码:
Private Sub Worksheet_Change(ByVal Target As Range)
'Add Issue Type'
Dim Code As Range
Set Code = Range("C2:C100000")
For Each Cell In Code
If InStr(1, Cell, "NAC") Then
Range("A2:A10000").Value = "Correct"
ElseIf InStr(1, Cell, "MAM") Then
Range("A2:A10000").Value = "Wrong"
End If
Next
End Sub
我的桌子是这样的: Table
提前谢谢大家:)
【问题讨论】:
-
在我看来,您想要
Change事件,而不是SelectionChange事件? -
这听起来至少有两个单独的问题。问题 A)检查 C 列中的单元格并相应地更改 A 列(同一行),问题 B)在 D 列更改时将日期添加到 E 列。在这种情况下,这些应该是两个单独的线程。另外,我没有看到问题/特定问题,只是对代码的请求。我不是专业人士,但是您发布的代码看起来不会像您正在尝试的那样做任何事情。你能进一步分解这个问题并删除不必要的代码吗?见 --> stackoverflow.com/help/mcve
-
每次 D 列发生变化时,是否要检查所有 C 列?
-
@FreeSoftwareServers 我认为它只是一个,因为它可能需要相同的代码。但我想根据单元格 C 上的文本在单元格 A 上添加一个值。
-
@BigBen 好吧,我对事件了解不多,但是在互联网上搜索可能会有所帮助,尽管我不知道要添加什么代码。