这是我第一次在这里发帖。多年来,我一直在慢慢学习如何利用excel 2007改善自己。我已经开始使用一些vb代码来帮助加快工作中的某些数据输入速度。因此,我在网上找到了一些代码,并从此开始。一切工作完美,直到我将相同的代码应用于更多工作表。现在我得到
运行时错误'1004':对象'_Global'的方法'Intersect'失败
这是我正在使用的基本版本。在不同的工作表上会有所不同。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim WorkRng As Range
Dim Rng As Range
Dim xOffsetColumn As Integer
Set WorkRng = Intersect(Application.ActiveSheet.Range("D:D"), Target)
xOffsetColumn = 5
If Not WorkRng Is Nothing Then
Application.EnableEvents = False
For Each Rng In WorkRng
If Not VBA.IsEmpty(Rng.Value) Then
Rng.Offset(0, xOffsetColumn).Value = Now + 365
Rng.Offset(0, xOffsetColumn).NumberFormat = "mm/dd/yyyy"
Else
Rng.Offset(0, xOffsetColumn).ClearContents
End If
Next
Application.EnableEvents = True
Else
Set WorkRng = Intersect(Application.ActiveSheet.Range("E:E"), Target)
xOffsetColumn = 4
If Not WorkRng Is Nothing Then
Application.EnableEvents = False
For Each Rng In WorkRng
If Not VBA.IsEmpty(Rng.Value) Then
Rng.Offset(0, xOffsetColumn).Value = Now + 365
Rng.Offset(0, xOffsetColumn).NumberFormat = "mm/dd/yyyy"
Else
Rng.Offset(0, xOffsetColumn).ClearContents
End If
Next
Application.EnableEvents = True
End If
End If
End Sub
这似乎是我认为的问题
Set WorkRng = Intersect(Application.ActiveSheet.Range("D:D"), Target)
看到我正在自学,我还是很绿的,在这一点上,任何帮助都将不胜感激。谢谢