【发布时间】:2019-08-01 07:35:03
【问题描述】:
我设置了一个工作表,其中在 M 列中输入了一个位置,但是它需要阻止人们使用缩写 - 我正在尝试设置一个 MsgBox,例如,如果在一个M5:M1000 范围内的单元格但似乎无法使其工作?我认为这将是一个私人潜艇,如下所示?
编辑:它需要搜索部分值,以便在完全输入文本后检查单元格。
Private Sub IncorrectText()
If InStr(ActiveSheet.Range("M5:M1000").Value, "J/W") > 0 Then
MsgBox "Please DO NOT use abbreviations" & vbNewLine & vbNewLine & "Change this to 'at/ from the junction with...'"
End If
End Sub
【问题讨论】:
-
您无法以这种方式从范围中获取值。您可以循环遍历单元格或使用 Change 事件仅检测已更改的单元格。
-
或为此目的使用
Range.Find。但更好的是Worksheet_SelectionChange事件来捕获单元格更改