Anonymous
Anonymous asked in 電腦與網際網路軟體 · 8 years ago

生日排序excel問題~~

請問49.10.02

52.10.15

57.10.22

60.10.30

我要月和日由10.1到10.31排序,但保持年份在。

這樣的excel問題,可以幫我解決嗎?謝謝。

Update:

感謝各位的意見~我等等要試試嘍~~看起來好複雜的樣子哦。

4 Answers

Rating
  • Daniel
    Lv 7
    8 years ago
    Favorite Answer

    B1:

    =INDEX(A:A,RIGHT(SMALL(--IF(ISERR(--SUBSTITUTE(RIGHT(A$2:A$99,5),".",)),10^6&99,RIGHT(A$2:A$99,5)*10^4&ROW($2:$99)),ROW(A1)),2))&""

    陣列公式

    2012-11-29 20:49:53 補充:

    簡化B2:

    =INDEX(A:A,RIGHT(SMALL(--IF(ISERR(RIGHT(A$2:A$99,5)*1),10^6&99,RIGHT(A$2:A$99,5)*10^4&ROW($2:$99)),ROW(A1)),2))&""

    2012-12-04 08:41:38 補充:

    假設資料在A欄A2開始,則B2公式:=INDEX(A:A,RIGHT(SMALL(--IF(ISERR(RIGHT(A$2:A$99,5)*1),10^6&99,RIGHT(A$2:A$99,5)*10^4&ROW($2:$99)),ROW(A1)),2))&"" 此為陣列公式,輸入後先不按ENTER,以 [Ctrl] + [Shift] + [Enter] 三鍵齊按作結束,然後向下複製公式。若資料有超過A99,請版大自行調整公式。

  • 8 years ago

    資料若不只單一欄,且各資料型態都不一樣,格式也不一樣,

    何不加個〔輔助欄〕取出〔月份.日期〕排序就好?

  • 8 years ago

    不防空格及錯輸入

    =INDEX(A:A,RIGHT(SMALL(RIGHT($A$1:$A$6,5)+ROW($1:$6)%%,ROW(A1)),2))

    陣列

  • 冰淇
    Lv 6
    8 years ago

    如資料在A1:A6

    B1

    =IF(A1="","",INDEX($A$1:$A$6,MATCH("*"&TEXT(SMALL(IF(ISERROR(RIGHT($A$1:$A$6,5)*100),"",RIGHT($A$1:$A$6,5)*100),ROW())/100,"00.00"),$A$1:$A$6,),1))

    陣列函數(按Shift+Ctrl+Enter)

    參考

    待其他大大更優的答案

    2012-12-03 22:21:12 補充:

    請 Daniel 大師 上答

Still have questions? Get your answers by asking now.