我曾經有以下代碼,它曾經工作但由於某種原因它不再有效。更改單元格,如果其他單元格包含文本vba
Private Sub Worksheet_Change(ByVal Target As Range)
Dim test As Range
Dim KeyCells As Range
Dim i As String
Set KeyCells = Range("AF3:AF5000")
test = Target.Rows.Count
If Not Application.Intersect(KeyCells, Range(Target.Address)) Is Nothing Then
For i = Target.Row To (Target.Row + (Target.Rows.Count - 1))
If Not ActiveSheet.Cells(i, 32) = "" Then
ActiveSheet.Cells(i, 20).Value = "Closed"
End If
Next
End If
End sub
基本上,如果有在列AF的任何單元中的數據,然後將所述細胞與在塔T的信息對準將標誌着關閉。例如,如果AF65 <>「」那麼T65.value =「關閉」
任何想法爲什麼它不再有效,或者如果有宏的另一種可能性?
我收集這是工作表的私人代碼表中的Worksheet_Change事件子。這可能包括一些東西。 – Jeeped
嗨,是的,你是對的,我會在代碼中添加。 –
它在什麼時候起作用,什麼時候起作用時發生了什麼變化?例如你是否將代碼複製到另一個工作簿(並將其放在錯誤的地方),你是否運行了其他一些禁用了「EnableEvents」的事件,並且您還沒有可渲染的事件?你是否開始研究一個新的工作表(即不是那個有Change事件的工作表)?等等等等。 – YowE3K