在InputBox中输入一些值时检查值格式

时间:2018-03-15 06:51:46

标签: excel-vba vba excel

我有一些有效的代码。但我需要额外的安全性,数据不能混淆。 我将在下面添加一部分代码并添加一条我需要的评论。

我需要检查我在InputBox中输入的myValue是否采用这种格式(## - ## - ##)(#=任意数字),如果不是在单元格中输入值,但重复步骤直到myValue格式正确。如果myValue为空(如果我按下InputBox中的取消退出Sub)

Sub veikia()


     myValue = InputBox("Nuskenuokite Pakavimo data")
     If myValue > 0 Then
Range("A2").Value = myValue
          End If

Application.Wait (Now + TimeValue("00:00:01"))
               '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
myValue = InputBox("Nusiskenuokite savo paþymëjimà")
If myValue > 0 Then
Range("C2").Value = myValue
    End If  
End Sub

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

使用Like运算符可以轻松完成任务。

Option Explicit

Sub veikia()
Dim myValue As String

Do While True
    myValue = InputBox("Nuskenuokite Pakavimo data")
    If myValue = "" Then
        'if cancel is  pressed exit sub
        Exit Sub
    End If
    If myValue Like "[0-9][0-9]-[0-9][0-9]-[0-9][0-9]" Then
        'if the format is correct then exit loop
        Exit Do
    End If
Loop
'rest of your program
End Sub