If((Asc(ActiveCell)> 65和Asc(ActiveCell)< 95)或(Asc(ActiveCell)> 97和Asc(ActiveCell)< 122))然后 '如果是Application.WorksheetFunction.IsText(ActiveCell)那么 'if((Asc(ActiveCell)< 65和Asc(ActiveCell))> 90 Or(Asc(ActiveCell)< 97和Asc(ActiveCell)> 122))然后 其他 FnameTextOnly.Add ActiveCell.Address(False,False) 万一 ActiveCell.Offset(1,0)。选择 万一 这是代码在单元格的值时正常工作,例如:12as,@#$%,1234 但如果我输入数据,例如:asd34,那么它不应该接受但是接受它,因为名称以文本开头。
答案 0 :(得分:0)
以下是测试 ActiveCell
的一种方法Sub CellText()
Dim CH As String, v As String
v = ActiveCell.Text
For i = 1 To Len(v)
CH = Mid(v, i, 1)
If CH Like "[a-zA-Z]" Then
Else
MsgBox v & " is not valid"
Exit Sub
End If
Next i
MsgBox v & " is valid"
End Sub
答案 1 :(得分:0)
尝试将ISTEXT的If语句(单元格引用)添加到例程中。这样,ISTEXT(asd34)= False。在相应地确定真假分支之后。