我快疯了:
我在我的工作表2中有这段代码,它工作得很好(代码见图):
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A5:D150")) Is Nothing Then Cancel = True
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("A6:D150")) Is Nothing Then Exit Sub
On Error GoTo ExitPoint
Application.EnableEvents = False
If Not IsDate(Target(1)) Then
Application.Undo
MsgBox " You can't delete cell content :)" _
, vbCritical, "Sara"
End If
ExitPoint:
Application.EnableEvents = True
End Sub现在我有了一个Excel工作表,它是单元格A:AC。
我希望这个公式应用于A:D,skip E,应用于F:V,skip W:Z,应用于AA:AC。
如何将这些代码实现到多个范围?
我尝试了很多方法,但都失败了。我真的很感谢大家的帮助和反馈。
发布于 2018-03-21 08:51:52
您可以尝试使用Union。类似于:
Dim r As Range
Set r = Union(Range("A6:D150"),Range("F6:V150"),Range("AA6:AC150"))
If Intersect(Target, r) Is Nothing Then
'rest of your code或者您可以直接使用非连续范围表示法:
If Intersect(Target, Range("A6:D150,F6:V150,AA6:AC150")) Is Nothing Then
'rest of your codehttps://stackoverflow.com/questions/49396218
复制相似问题