close

3100

Excel如何將同大樓樓層房間排序

許平秋:錦子老師您好,請教一下,A欄中是同一棟大樓的各個房間編號,634是大樓名稱,-1-2是樓層,第二個-號後面數字是房號,由於房號輸入有各個位數(1~4位數不等),並無一致,如何先依樓層,再依房號數字大小排序?

image

錦子老師:這個問題解決方法如下:

步驟1:點取C2儲存格,輸入公式:

=INDEX($A$2:$A$13,MATCH(SMALL(MID($A$2:$A$13,5,1)*10000+MID($A$2:$A$13,7,LEN($A$2:$A$13)-6),ROW()-1),MID($A$2:$A$13,5,1)*10000+MID($A$2:$A$13,7,LEN($A$2:$A$13)-6),0))

再按CTRL+SHIFT+ENTER鍵完成陣列公式輸入,將公式複製到C3:C13儲存格。

image

【公式說明】

=INDEX($A$2:$A$13,MATCH(SMALL(MID($A$2:$A$13,5,1)*10000+MID($A$2:$A$13,7,LEN($A$2:$A$13)-6),ROW()-1),MID($A$2:$A$13,5,1)*10000+MID($A$2:$A$13,7,LEN($A$2:$A$13)-6),0))

公式1MID($A$2:$A$13,5,1)

A2:A13儲存格中從第5個字元開始抓取1個字元,這是為了抓樓層值。

公式2MID($A$2:$A$13,7,LEN($A$2:$A$13)-6)

A2:A13儲存格中從第7個字元開始抓取(儲存格字串長度減6)個字元,這是為了抓房號。

公式3SMALL(公式1*10000+公式2,ROW()-1)

公式1傳回的樓層數值乘以10000,這是為了比大小用,再加上公式2的房號數值,然後傳回其中的第N(ROW()-1)小值。

公式4MATCH(公式3,公式2,0)

公式3傳回的數值在公式2中以完全比對方式搜尋,傳回其位在第幾個。

公式5INDEX($A$2:$A$13,公式4)

填入A2:A13儲存格中第N(公式4結果)個儲存格內容。

以上就是今天主要學習的知識點,希望對大家有所幫助~~有什麼問題歡迎留言,我會儘量及時的給大家答覆~~

更多相關影片教學:請點我

更多相關文章:請點我


arrow
arrow
    創作者介紹

    錦子老師 發表在 痞客邦 留言(0) 人氣()