Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Application.Intersect(Target, Range("C1:C3,G1:G3,L1:L3,P1:P3")) _
Is Nothing) Then
With Target
If Not .HasFormula Then
Application.EnableEvents = False
.Value = UCase(.Value)
Application.EnableEvents = True
End If
End With
End If
End Sub
几乎所有的程序都是自动为我想要的区域大写的。但是,如果我按删除键,说如果我输入错误,宏就会出错,但是退格操作非常好,没有任何问题
1条答案
按热度按时间htrmnn0y1#
这是一种更安全的方式来处理您想要做的事情-它可以确保如果您尝试更新多个单元格,它不会崩溃:
顺便说一句,我没有看到任何错误与您张贴的代码时,选择一个单元格,并按下删除...