2017-08-24 213 views
-1

我想一个VBA代码来删除这是在A列单元格中的内容时,在E列单元格中的内容被清除同一行VBA代码以删除Excel 2010中

这是我在这里就是我想要的是什么,我改变了代码,它停止工作

Private Sub Worksheet_Change(ByVal Target As Range) 
    Dim n As Integer 
    For n = 5 To 75 
     Application.EnableEvents = False 
     If VarType(Cells(n, 1)) = vbEmpty Then 
      Cells(n, 4).ClearContents 
      Cells(n, 5).ClearContents 
      Cells(n, 6).ClearContents 
      Application.EnableEvents = True 
     End If 
    Next n 
End Sub 

我需要在内容E列被清除(细胞(n,5))来清除列A含量为这个特定的代码(单元格(n,1)),而不必删除并删除它

+0

你的代码是禁用事件,只有重新启用它们,如果单元格A75为空。这意味着一旦A75不是空的,代码将永远不会再运行(因为它是一个事件)。在'If'之外移动'Application.EnableEvents = True'。 (并且您需要手动重新启用事件才能使事情再次运行。) – YowE3K

回答

0

在中不需要循环事件。您正将目标(要修改的单元格传递给该过程)。这将做你在找什么:

Private Sub Worksheet_Change(ByVal Target as Range) 
    If Target.Column = 5 Then 
      If Target.Value = vbEmpty Then 
       Cells(Target.Row,1).ClearContents 
      End If 
    End If 
End Sub