我已经通过大约30-40个关于这类问题的链接,但我还没能找到解决我特定问题的方法。希望你能帮助我!
设置如下; 在sheet1中,L(12)列中有一个公式,它使用查找公式在sheet2中查找特定的ID号。在sheet2用户中,每天都会粘贴一个ID列表。如果sheet1 上的查找公式可以在列表中找到ID,则会给出值"已修复"。我希望得到一个宏,当它更改为"固定"时,会自动将ID号的整行保存到sheet3。在sheet1中。
到目前为止我在Sheet1中的代码是:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim keyCells As Range
Set keyCells = Columns(12)
On Error Resume Next
Set keyCells = Application.Union(keyCells, keyCells.Precedents)
On Error GoTo 0
If Not Application.Intersect(Target, keyCells) Is Nothing Then
' Application.EnableEvents = False
Dim a As Range
For Each a In Intersect(Target, Columns(12))
If CBool(Len(a.Value2)) And Target.Value = "Fixed" Then _
a.EntireRow.Copy _
Destination:=Sheets(3).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
Next a
End If
Application.EnableEvents = True
End Sub
问题是它只在我手动对sheet1进行更改时运行,而不是在值更改为&#34时运行;#34;固定"当我在sheet2上做了一些事情时!
我已经尝试了一些带有worksheet_calculate的版本但是它一直在运行,而且不仅在L列中运行。
感谢您的帮助!