EXCEL:将“jan”“feb”“mar”“apr”格式化为 MONTH(01,02,03)

Joh*_*ohn 1 microsoft-excel

请知道的人:

Date----------------Result--------------------------------------What I want!
9.99 LATE AUG 13 ---IF(ISNUMBER(SEARCH("aug",B2&" "&C2)),"08"---08
9.99 Early Sept 13 ----"""--------------------------------------09
Run Code Online (Sandbox Code Playgroud)

如果我使用所有 12mnths 那么它给出错误:-无法输入指定的公式,因为它使用的嵌套级别超过允许的级别

例如:-

  (B2)------------------(C2)
Run Code Online (Sandbox Code Playgroud)

HK-753F(6)LATE AUG 13------- MERC

HK-754F(6) ------------------------ 9 月初 13

11.99 -------------------------------- 9 月 13 日晚

11.99 -------------------------------- 9 月 13 日晚

10.99 六月 13 --------------------- MERC

bar*_*ini 5

试试这个公式

=MATCH(2^15,SEARCH({"jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"},B2&" "&C2))

或稍短但不太透明的版本....

=MATCH(2^15,SEARCH(TEXT(29*{1,2,3,4,5,6,7,8,9,10,11,12},"mmm"),B2&" "&C2))

解释

当您SEARCH对 {"jan","feb","mar","apr","may","jun","jul","aug","sep"," oct","nov","dec"} 那么结果也是一个数组,一个#VALUE!B2&" "&C2 中不存在的每个术语的错误和一个数字(位置)如果存在,那么如果 B2&" "&C2 = HK-753F(6)LATE AUG 13 MERC那么结果

=SEARCH({"jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"},B2&" "&C2)

是以下数组:

{#VALUE!,#VALUE!,#VALUE!,#VALUE!,#VALUE!,#VALUE!,#VALUE!,17,#VALUE!,#VALUE!,#VALUE!,#VALUE!}

请注意,除了位置 8 处的 17(17 是 B2&”“&C2”中“AUG”的“A”的位置)之外,所有条目都是错误的。

MATCH函数(没有第三个参数)在该数组中查找像 2^15 这样的“bignum”时,它总是与最后一个数字匹配,因此结果为 8(因为“aug”是月份列表中的第 8 个)