看你的代码放置的位置!
如果想在别人输入内容 或改变内容时 进行判断输入是不是正确,应该放在
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Sheets("sheet1").Range("b8").Value <> "五华县安流镇中心卫生院" Or Sheets("sheet1").Range("f8") <> "医院" Then
msg = MsgBox("分娩医院不是“五华县安流镇中心卫生院”或者出生地点分类不是“医院”,您确定是正确的吗?", vbOKCancel, "接生机机与出生地点分类提示")
'If msg = 2 Then Exit Sub
End If
End Sub
中间。
你的代码我给了点。 (1) If msg = 2 这句没什么用。
(2)第一个If 后面的条件用 Or ,不过看代码似乎你只是 进行测试,也就无所谓了!
运行通过!
少了一个end if
Sub trial()
If Sheets("sheet1").Range("b8").Value <> "五华县安流镇中心卫生院" And Sheets("sheet1").Range("f8") <> "医院" Then
msg = MsgBox("分娩医院不是“五华县安流镇中心卫生院”或者出生地点分类不是“医院”,您确定是正确的吗?", vbOKCancel, "接生机机与出生地点分类提示")
End If
If msg = 2 Then
Exit Sub
End If
End Sub
代码没问题。
Sub xx()
代码
End Sub
另外看 提示 ,条件中好像要用 OR 而不是AND。