New*_*ing 0 excel excel-formula
我正在使用 Excels 2013 中期和搜索功能从评论栏中获取日期,但我不知道如何执行此操作以涵盖 8 种日期格式(dd/mm/yyyy、dd/mm/yy 等)。我的三个公式在下面,尽管我需要将它们全部连接在一起以捕获所有日期格式。注释列可以是任何文本,其中的任何位置都带有日期。
=MID(A6, SEARCH("??/??/????", A6, 1), 10)
=MID(A7, SEARCH("?/??/????", A7, 1), 9)
=MID(A8, SEARCH("??/?/????", A8, 1), 9)
Run Code Online (Sandbox Code Playgroud)
必须有更好的方法来做到这一点,因为我能想到的唯一方法是将每个公式放在单独的列上,然后使用 if 语句来显示日期。任何帮助将不胜感激。谢谢
示例列数据
Paid on 01/01/2017
Paid on 1/01/2017, Reference AAA123
Reference BBB456 Paid on 01/1/2017
Run Code Online (Sandbox Code Playgroud)
如果字符串中的日期之前没有其他数字,则此数组公式有效:
=INDEX(--TRIM(CLEAN(MID(SUBSTITUTE(SUBSTITUTE(A1," ",REPT(" ",999)),",",""),(ROW(INDIRECT("1:" & LEN(A1)-LEN(SUBSTITUTE(A1," ",""))+1))-1)*999+1,999))),MATCH(TRUE,ISNUMBER(--TRIM(CLEAN(MID(SUBSTITUTE(SUBSTITUTE(A1," ",REPT(" ",999)),",",""),(ROW(INDIRECT("1:" & LEN(A1)-LEN(SUBSTITUTE(A1," ",""))+1))-1)*999+1,999)))),0))
Run Code Online (Sandbox Code Playgroud)
作为数组公式,退出编辑模式时需要使用 Ctrl-Shift-Enter 而不是 Enter 进行确认。
它按空格解析字符串并遍历每个“单词”,直到找到第一个可以转换为数字的日期,即日期。
这将要求将输出格式化为所需的日期格式。
| 归档时间: |
|
| 查看次数: |
1410 次 |
| 最近记录: |