回覆列表
  • 1 # Excel大白

    如何將5年11月零3天的文字工齡轉換成數字格式來表示工齡?

    這個問題還真的一點都不簡單,首先你要把“5年11月零3天”這個字串裡的年、月、日分別從裡面提取出來,然後把月份和天數轉換成年份,再跟年份相加。

    思路就是這個樣子的,但是裡面最難的就是把年月日分別提取出來,下面我就說說我是怎麼做的。

    因為這個字串中有“零”,後去用函式提取數字的時候會很麻煩,所以我們先對這個字串做一下前期處理。

    選中字串所在的區域,然後用Ctrl + H組合鍵調出替換對話方塊,把所有的漢字“零”都替換成數字“0”。

    第一步:提取年數

    因為年份不可能都是1位數的,有可能是兩位數,所有你不能直接用LEFT函式提取年份,還要確定提取幾個字元也就是要確定年數的位數。

    看圖中的公式,我先用FIND函式找到“年”在字串中的位置,然後減去1就得到了年數的位數,再用LEFT函式提取最左邊的指定位數的字元。最後的乘1的作用是將字串轉換成數字。

    第二步:提取月份

    跟年份一樣要確定月份的位數,還要確定從字串中的第幾位開始提取字元。

    圖中公式解析:

    FIND("年",$B2):確定“年”在字串中的位置,然後加1就得到了月數的起始位置。

    FIND("月",$B2)-FIND("年",$B2)-1:同樣的方法確定“月”在字串中的位置,減去“年”的位置,再減1就得到了月的位數(字元長度)。

    MID函式:用於從字串中提取指定位置、指定長度的字串。

    最後除以12將月份轉換成年。

    第三步:提取天數同樣用MID函式提取天數,先確定起始位置,因為我們前期對字串做了處理,所以我們就不用確定天數的位數了,位數就是兩位。

    將提取的字串*1轉換成數字,再除以365轉換成年。

    第四步:把上面三個補助得到的數字加起來就得到了一個以年為單位的數字。

    把上面的三個公式用“+”號連線起來就成了上圖中的公式。

    上面用到的所有函式都是文字函式,如果有不明白的地方可以看我以前發的文章。

  • 中秋節和大豐收的關聯?
  • 史上最難的字謎沒有一個人答上?