我正在尝试创建一个在更改第13列中的任何单元格时运行的子例程。我已经阅读了很多堆栈溢出问题,但还没找到我的答案。这里有一些我读过:
Uses intersect. Doesn't address my issue
Might work but I'm not very good with events
我尝试使用交叉功能
使其工作Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Not Intersect (Target, Activesheet.Columns(13)) Is Nothing Then
MsgBox "Help Help"
EndIf
End Sub
当我更改值时会有效,但如果单独保留一段时间,它会出现"运行时错误' 1004':方法'对象的交叉' _Global'失败&#34 ;.欢迎任何想法。如果有更简单的方法来实现这一点,我很想知道。感谢您的时间。
答案 0 :(得分:1)
处理所有工作表,将其放在ThisWorkbook代码窗格
中Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Not Intersect(Target, Sh.Columns(13)) Is Nothing Then
MsgBox "Help Help"
End If
End Sub
或
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Column = 13 Then
MsgBox "Help Help"
End If
End Sub
否则将以下内容放在您想要处理"处理"的工作表的代码窗格中。仅
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 13 Then
MsgBox "Help Help"
End If
End Sub