我正在尝试在Excel的数据验证中构建正则表达式。但是,它不起作用。
请您解释一下如何将数据验证放入Excel
我希望使用字符,quote('),空格和点号来验证姓氏数据。
=ISNUMBER(MATCH("^[a-zA-Z\s,.']*$",F:F,0))
我使用的是上述公式,同样,它不起作用
对于SSN,我正在使用以下公式,但它不起作用
=AND(ISNUMBER(MATCH("/^\d{3}-\d{2}-\d{4}$/",A2,0)),LEFT(A2,1)>=0)
请帮助我从数据标签或VBA脚本构建数据验证以进行数据验证。
答案 0 :(得分:1)
很遗憾,Match Function无法支持正则表达式。它只能匹配一个恒定值。
我建议您看看This very detailed post,它很好地解释了如何在Excel中使用正则表达式。
除此之外,您的正则表达式似乎处于工作状态-如果您进行了此设置,则它应立即运行。祝你好运!
答案 1 :(得分:1)
Excel中的MATCH函数不用于正则表达式匹配。 但是您在这里不需要它,它看起来像。
要只允许字母和,.'
,可以使用如下公式:
=ISNUMBER(SUMPRODUCT(SEARCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)," ,.'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")))
要验证SSN,请尝试使用指南here
中的公式=AND(LEFT(F1,1)>="0",LEN(F1)<10,ISNUMBER(F1))
更多指针: