我希望根据以下模式过滤Excel电子表格中的列:
Cell value should end in "-####.html" (where #### is a 4 digit number).
这应与-1234.html
匹配,但不应与-test.html
匹配。
到目前为止,我能找到的最佳解决方案是" 自定义自动过滤器"选项,我可以将过滤条件设置为以-????.html
结尾,但这并未明确仅包含数字:
任何人都可以提出一个简单的方法来做这个不涉及复杂VB宏的方法吗?
答案 0 :(得分:4)
假设您的数据将第1行作为标题行,以便实际数据从第2行开始,并且包含数据的列是A列,您可以在第2行开始的未使用列中使用此公式并向下复制:
=AND(MID(A2,LEN(A2)-9,1)="-",ISNUMBER(--MID(A2,LEN(A2)-8,4)),LOWER(RIGHT(A2,5))=".html",LEN(A2)>10)
然后过滤TRUE
答案 1 :(得分:1)
首先,您需要在 - 之前添加一个虚拟值,因为您不能在单元格值中使用'。也许添加“a”&你的价值观。在辅助列中,添加
=AND(ISNUMBER(VALUE(MID(A2,FIND("-",A2)+1,LEN(A2)-(FIND("-",A2)+5)))),RIGHT(A2,5) = ".html")
答案 2 :(得分:0)
您需要向其中添加新列。在新列中使用以下公式。
= IF(AND(LEFT(RIGHT(A2,10),1)= “ - ”,VALUE(LEFT(RIGHT(A2,9),4))> = 0,VALUE(LEFT(RIGHT(A2 ,9),4))≤; = 9999,RIGHT(A2,5)=), “Y ” “N”)
“ HTML”。
然后根据新列上的 y 过滤数据。