Excel應用大全 |常用的文本函數

2022-01-05 博雅讀書社

在一些有規律的字符串中提取字符或是將多個字符根據條件進行合併,是數據處理過程中的一項基礎性的操作,用於字符提取與合併的函數主要有MID 函數、RIGHT 函數和 LEFT函數等。

示例 5-46 分別提取中文物料名稱和英文數字規格型號

圖5-68 展示了某公司物料明細表的部分內容,A 列是物料名稱和規格型號的混合內容,需要在 B 列和 C 列分別提取出物料名稱和規格型號。

圖5-68物料明細表

B2 單元格輸入以下公式,提取出物料名稱,將公式向下複製填充到數據表最後一行。=LEFT(A2,LENB(A2)-LEN(A2))

C2 單元格輸入以下公式,提取出規格型號,將公式向下複製填充到數據表最後一行。=RIGHT(A2,LEN(A2)*2-LENB(A2))

LEN函數和LENB函數用於統計字符長度。LEN函數對任意單個字符都按一個長度計算。LENB 函數則將任意單個的單字節字符按一個長度計算,將任意單個的雙字節字符按兩個長度計算。

雙字節字符又稱為全形字符,是指一個字符佔用兩個標準字符位置的字符,所有中文字符均為雙字節字符。半角字符是指一個字符佔用一個標準字符位置的字符,又稱為單字節字符。在英文輸入法狀態下輸入的字符,默認就是半角字符。

LEFT 函數和 RIGHT 函數的作用是從字符串的左 / 右側開始,提取指定數量的字符,函數語法如下。

LEFT(text,[num_chars])

RIGHT(text,[num_chars])

第一參數是要提取的字符串或單元格引用,第二參數指定要提取幾個字符,如果省略第二參數時,會默認提取最左 / 右側的一個字符。

字符串的提取,先要觀察數據的分布規律。本例中的數據都是以中文的全形字符開頭,隨後是字母或是數字等半角字符,提取之前,需要先確定好全形字符和半角字符的個數。

已知一個全形字符的字節數等於兩個半角字符的字節數,因此全形字符個數= 字節數 -符數。

半角字符個數 = 字符數 - 全形字符個數,也就是 = 字符數 -( 字節數 -字符數 ),或者寫成 = 字符數 + 字符數 - 字節數。繼續修約,則半角字符個數的公式變成 = 字符數 *2- 字節數。

B2 單元格公式中先使用「LENB(A2)-LEN(A2)」得到全形字符的個數。再使用LEFT 函數從 A2 單元格的左側開始,根據計算出的全形字符個數,提取出該單元格中的物料名稱。

C2 單元格中的公式使用「LEN(A2)*2-LENB(A2)」得到半角字符的個數,再使用 RIGHT函數從 A2 單元格右側開始,根據計算出的半角字符個數,提取出該單元格中的規格型號。

注意:本例的計算方法僅適用於中文作業系統下的中文版 Excel。

在一些有固定間隔符號的字符中提取數字時,可以藉助 FIND 函數完成。圖 5-69 展示了某保健品經銷商進貨明細表的部分內容,E 列的零售價是數字和文字的混合內容,需要從中提取出零售價數字。

F2 單元格輸入以下公式,將公式向下複製到數據表的最後一行。 =LEFT(E2,FIND("/",E2)-1)*1觀察 E 列的數據可以發現,零售價金額都是在最左側,和後面的單位之間以「/」作為間隔符號。因此只要確定「/」的位置,然後提取出「/」左側的數字即可。FIND 函數能夠根據指定的字符串,在另一個單元格或字符串中定位這個字符串首次出現的位置。函數語法如下。 FIND(fifind_text,within_text,[start_num])第一參數是要查找的字符。第二參數用於指定要在哪些單元格或字符串中進行查找。第三參數是可選參數,用於指定從第二參數的第幾個字符位置處開始查找。省略該參數時,默認為 1。無論第三參數是否為 1,FIND 函數最終返回的位置都是以第二參數的首個字符開始計算。如果第二參數中不包含要查找的內容,結果將返回錯誤值#VALUE!。本例中,FIND 函數以「/」作為查找內容,在 E2 單元格中查找「/」首次出現的位置,返回結果為 4。再將這個結果減去 1,作為 LEFT 函數的第二參數,最終提取出首個「/」之前的數字。由於 LEFT 函數、RIGHT 函數等文本類函數的提取結果都是文本型內容,因此最後用乘1 的方式,將文本型數字轉換為數值如果要檢測字符中是否包含並返回某些關鍵字,可以使用 FIND 函數結合LOOKUP 函數完成。圖 5-70 展示了某公司物料盤點表的部分內容,需要根據 B 列物料名稱中包含的關鍵字,以 H 列的對照表作為參照,判斷物料所屬大類。

F2 單元格輸入以下公式,將公式向下複製填充到數據表最後一行。=LOOKUP(1,0/FIND(H$2:H$5,B2),H$2:H$5)

公式中的「FIND(H$2:H$5,B2)」部分,分別查找 H$2:H$5 單元格區域中每個關鍵詞在B2 單元格中首次出現的位置。如果 B2 單元格中包含其中的某個關鍵詞,結果返回表示位置的數字,否則返回錯誤值。

 {5;#VALUE!;#VALUE!;#VALUE!}

然後使用 0 除以該內存數組,使其變成由 0 和錯誤值構成的新內存數組。

{0;#VALUE!;#VALUE!;#VALUE!}

最後使用 LOOKUP 函數,以數值 1 作為查詢值在內存數組中查找。由於找不到 1,因此以小於 1 的最接近值 0 進行匹配,並返回第三參數 H$2:H$5 單元格區域中對應位置的內容「PP」。

要按照分類對指定內容進行合併時,可以使用 TEXTJOIN 函數完成。

示例 5-49 合併同一分店的發票號碼

圖 5-71 展示了某公司下屬分店的部分銷售開票記錄,需要按照不同的分店將發票號碼合併到同一個單元格。

圖5-71銷售開票記錄

步 驟 1複製 H 列的分店名稱,粘貼到 K 列,然後單擊 K 列數據區域的任意單元格(如K2),切換到【數據】選項卡下,單擊【刪除重複值】按鈕。在彈出的【刪除重複值】對話框中保留默認設置,單擊【確定】按鈕,在彈出的提示對話框中再次單擊【確定】按鈕,完成不重複分店名稱的提取,如圖 5-72 所示。

步 驟 2在 L1 單元格輸入欄位標題「發票號碼」,然後在 L2 單元格輸入以下數組公式,按< Ctrl+ Shift+Enter >組合鍵,再將公式複製填充到數據表最後一行,如圖 5-73所示。{=TEXTJOIN("、",TRUE,IF(H$2:H$184=K2,A$2:A$184,""))}

圖5-72刪除重複值

圖5-73合併同一分店的發票號碼

TEXTJOIN 函數的作用是使用指定的分隔符號,連接多個單元格或多個字符串。函數語法如下。

TEXTJOIN(delimiter,ignore_empty,text1,[text2],…)

第一參數是指定的分隔符類型。第二參數是邏輯值,用於指定是否忽略連接內容中的空單元格或空文本,選擇 1 或 TURE 為忽略,選擇 0 或 FALSE 為不忽略。第三參數是要連接的單元格區域或是數組。

本例中的「IF(H$2:H$184=K2,A$2:A$184,"")」部分,如果 K2單元格的分店名稱等於H 列的分店名稱,IF 函數返回 A$2:A$184單元格區域中對應的發票號碼,否則返回空文本 ""。得到內存數組結果為:

 {15005006;"";"";"";"";"";"";"";……;"";"";"";"";"";""}

再使用 TEXTJOIN 函數連接該內存數組中的各個元素,第一參數為指定的間隔符號「、」,第二參數使用邏輯值 TRUE,表示忽略內存數組中的空文本,最終完成同一分店下所有發票號碼的連接。

除了使用查找替換功能來批量替換字符,還可以使用替換類函數將字符串中的部分或全部內容替換成新的字符串。如圖 5-74 所示,A 列是一些從系統導出的內容,同一個單元格內包含有科目代碼和各級科目名稱,不同項目之間使用「/」間隔,需要將這些內容分別拆分到右側各列中。

B2 單元格輸入以下公式,將公式複製填充到 B2:E25 單元格區域。=TRIM(MID(SUBSTITUTE($A2,"/",REPT("",99)),COLUMN(A1)*99-98,99))REPT 函數的作用是根據指定的次數重複顯示字符。COLUMN 函數的作用是返回參數的列號,如果省略參數,則返回公式所在單元格的列號。本例中的「COLUMN(A1)*99-98」部分,先使用 COLUMN 函數返回 A1 單元格的列號1,再用 COLUMN 函數的結果乘以 99 減 98,即 1*99-98,結果仍然是 1。當公式向右複製時,COLUMN 函數會依次得到 B1、C1……的列號,再將這些列號乘以 99 減 98,即相當於 2*99-98、3*99-98……,最終得到按 99 遞增的序號 1、100、199……,以此作為 MID函數的第二參數。 SUBSTITUTE 函數的作用是將字符串中的指定字符替換為新的字符,函數語法如下。SUBSTITUTE(text,old_text,new_text,[instance_num])第三參數指定要將原有字符替換成什麼內容,如該參數為空文本或僅保留參數之前的逗號時,相當於將需要替換的字符刪除。第四參數是可選參數,當第一參數中包含有多個要替換的字符時,該參數指定要替換第幾個。省略該參數時,則表示全部替換。公式中的「SUBSTITUTE($A2,"/",REPT(" ",99))」部分,先使用「REPT(" ",99)」將空格重複 99 次,最終得到 99 個空格。再使用 SUBSTITUTE 函數將 A2 單元格中的每一個分隔符「/」都替換為99 個空格,使其變成以下樣式的新字符串。"119301           往來中轉                  通賠"接下來使用 MID 函數,從 SUBSTITUTE 函數返回的字符串中提取字符,提取的起始位置是「COLUMN(A1)*99-98」得到的序號 1,提取長度為 99 個字符,結果如下。最後使用 TRIM 函數清除字符串中的多餘空格,得到科目代碼「119301」。當公式向右複製時,MID 函數分別從 SUBSTITUTE 函數返回字符串中的第 1 位、第100 位、第 199 位……依次提取出 99 個字符,並使用 TRIM 函數清除多餘空格,最終得到不同的科目代碼和科目名稱。 提示:公式中的 99 可以是其他一個較大的數字,目的是增加原有字符串中各個科目之間的間隔寬度,以便於 MID 函數分段截取出帶空格的字符。

推薦閱讀
北京大學出版社
Excel數據處理與分析應用大全

內容簡介:

本書全面系統地介紹了以 Excel 為核心工具開展數據處理與數據分析的各項技術,深入揭示背後的概念原理,並配以大量典型實用的應用案例,幫助讀者全面掌握數據分析工作的必備技能。全書分17 章,內容包括數據分析概述、數據採集、數據輸入、數據整理、藉助公式快速完成統計計算、藉助數據透視表快速完成統計計算、基礎統計分析、中心極限定理、假設檢驗、t 檢驗和卡方檢驗、方差分析、回歸分析、時間序列分析、規劃求解、Excel 數據表格美化、數據可視化和其他常用數據分析工具, 方便讀者隨時查閱。

本書適合各層次的數據分析從業人員,既可作為初學者的入門指南,又可作為中、高級用戶的參考手冊。書中大量的實例還適合讀者直接在工作中借鑑。

 作者簡介:

Excel Home是微軟在線社區聯盟成員,全球華語Excel資源網站,擁有大量原創技術文章、視頻教程、加載宏及模板。Excel Home是一個學習氛圍濃厚的技術交流社區,中國大陸及中國港臺各行各業身懷絕技的Office高手都匯聚於此,目前已有三百多萬辦公人士選擇成為它的註冊會員。Excel Home已精心編寫並出版Office領域的圖書60餘種,截至2016年春節,圖書銷量累計達120多萬冊。

相關焦點

  • excel文本函數應用:單元格中的數字和字母,如何判斷?
    很簡單,利用Code、Char、Find、Search文本函數搭配Count函數即可解決這個問題。另外,關於轉換字母大小寫、刪除字符前後兩端的空格等,我們今天也會介紹。學習更多技巧,請收藏關注部落窩教育excel圖文教程。文本字符是Excel中除了數字以外的另一種非常常用的數據類型,Excel也提供了大量的文本函數。
  • EXCEL函數公式大全之利用PROPER函數LOWER函數實現英文大小寫轉換
    EXCEL函數公式大全之利用PROPER函數LOWER函數實現英文字母大小寫轉換。EXCEL函數與公式在工作中使用非常的頻繁,會不會使用公式直接決定了我們的工作效率,今天我們來學習一下提高我們工作效率的函數PROPER函數LOWER函數。
  • excel函數公式應用:時間日期提取公式匯總,你用過哪些?
    今天老菜鳥針對上述在日常工作中經常會遇到的問題,總結了20個常用的關於日期和時間的公式,趕緊來看看吧!學習更多技巧,請收藏關注部落窩教育excel圖文教程。在實際工作中,經常需要進行日期和時間的計算,如:工作日天數、入職天數、合同到期日期、員工生日提醒、計算加班時間........
  • 最常用日期函數匯總excel函數大全收藏篇
    在我們的實際工作中,經常需要用到日期函數。日期函數那麼多,你還只會用函數TODAY嗎?那你就OUT了。今天一起來看下常用日期函數的用法! 1、DATE 函數DATE:返回在日期時間代碼中代表日期的數字。
  • EXCEL函數公式大全用SUM函數IF函數HOUR函數MINUTE函數計算加班費
    EXCEL函數公式大全之利用SUM函數、IF函數、HOUR函數與MINUTE函數的組合計算員工加班費。excel函數與公式在工作中使用非常的頻繁,會不會使用公式直接決定了我們的工作效率,今天我們來學習一下提高我們工作效率的函數SUM函數、IF函數、HOUR函數和MINUTE函數。
  • excel中最常用的30個函數:AND函數和OR函數的運用?
    excel中最常用的30個函數:AND函數和OR函數的運用?11-29 15:25 來源:成都路凡教育 原標題:excel
  • excel函數應用技巧:如何按不同要求,改變數字格式
    【ANSWER 4】再來一個回答助助興,如下所示:【函數解析】TRUNC函數不是很常用的函數,它的作用是將數字截為整數或保留指定位數的小數。第二參數為正數時,用於控制小數位數,超過指定位數後的數據直接丟掉;第二參數為負數時,用於控制需要將從個位數開始的多少位數字直接變成0。本處,第二參數為-3,就是將個位、十位、百位都歸零,得到我們的結果。
  • excel函數應用解析:透視表專有函數GETPIVOTDATA
    今天是部落窩函數課堂的第8課,我們將一起來認識GETPIVOTDATA函數!不知道小夥伴們還記不記得這個函數。沒錯!它就是我們前段時間發布的《受夠加班煎熬,我整理出10條職場人士最常用的透視表技巧!(下篇)》教程中,所提到的透視表的專有函數。GETPIVOTDATA函數的主要功能是返回透視表中的可見數據。
  • 年薪125萬的財務總監、精通424個excel函數公式,簡直我男神
    有機會在年薪125萬的財務總監電腦中,看到海量的excel表格、excel函數公式釋義及函數公式。聽老會計說,我們的財務總監已擔任本職崗位7、8年,從來沒見過哪個函數公式是他不會的,幾次有幸看到他在屏幕上設置excel表格,excel函數公式的運用,簡直神操作!絕了!今天,小編就和大家分享一下這424個excel函數公式釋義及示例大全,希望學會對你工作有很大的幫助!
  • excel函數應用:如何快速製作考生座次分配表
    既然要考試,自然就會涉及到考生座位安排的問題,今天我們就一起來學習一下,如何在excel中快速地製作考生的座位分配表!春節剛過,某部門馬上組織員工進行崗位技能考試,本次考試有561人報名參考,部門安排了兩個考場共18個考室,每個考室安排32座,需要對所有報名的考生隨機安排座位。
  • 計數、頻率函數應用技巧解讀 - Excel函數公式
    在Excel的應用中,統計數量與頻率的操作是非常廣泛的,針對不同的需求,也有不同的函數去完成相應的功能。一、Countif函數。功能:計算指定範圍中數字的個數。解讀:1、D3:D9區域有7個單元格,都有值,但D4、D8單元格的格式為文本(綠色倒三角),所以=Countif(D3:D9)的統計結果為5。2、如果要將文本型的數值轉換為常規類型或數字,常用的方法有:Value函數法、--符號法、*1或/1法、+0或-0法、以及選擇性粘貼法等。
  • Excel數字提取技巧:從混合文本中提取數字的方法
    前面我們分享了不用函數公式提取數字的5種方法。今天我們分享用簡單公式從混合文本中提取數字的方法。因為採用的公式很簡單,所以總體來說只適合數字在文本中的位置有一定規律的情況。如果想用公式提取沒有位置規律的數字,那就得看我們下一篇教程。學習更多技巧,請收藏關注部落窩教育excel圖文教程。
  • pandas數據處理:常用卻不甚了解的函數,pd.read_excel()
    人們經常用pandas處理表格型數據,時常需要讀入excel表格數據,很多人一般都是直接這麼用:pd.read_excel(「文件路徑文件名」),再多一點的設置可能是轉義一下路徑中的斜槓,一旦原始的excel表不是很規整,這樣簡單讀入勢必報錯!
  • excel函數應用:做一張函數控制的動態圖
    今天, excel也迎來了今年的第一場大雪,趕緊出來和小玲老師一起賞雪吧!瑞雪兆豐年,我用excel陪你看雪景,以感謝一路相伴與支持!值此元旦佳節之際,利用excel,特獻上一副動態雪景圖,讓我們共同迎接新的一年的到來!
  • excel常用的函數匯總!漲知識了
    在Excel報表中,為了快速進行數據的統計和分析,我們需要使用公式和函數。Excel公式是進行數值計算的等式。從廣義上來說,Excel函數其實也屬於公式,是一些預定義的公式,它們使用參數的特定數值按特定的順序或結構進行計算。那麼常用的excel函數有哪些呢?
  • Excel中find函數、left函數的使用方法的介紹
    Excel中find函數的功能就是返回一個字符串在另外的一個字符串中開始出現的位置(注意:區分大小寫的) Find函數的各參數具體含義: =FIND(find_text,within_text,start_num) 第一個參數
  • 實用的基礎excel函數有哪些呢?
    我們在使用excel的時候,記住幾個比較常用的函數,對於提高我們的工作效率很有幫助,所以,接下來小編將分享幾個實用的函數給大家。= TRIM()如果將文本從另一個程序複製到Excel中,則通常會出現多餘的空格,這會使電子表格成為視覺上的恐怖。 TRIM可以幫助您清理它。TRIM只能處理來自單個單元格的文本。 因此,例如,通過在單元格C1中鍵入= TRIM(B1)來清理單元格B1中的文本。
  • 假如你想提高工作效率,一定不要錯過這9個常用excel函數
    我們都清楚,如果我們在使用excel表格處理數據的時候,若想提高我們的工作中效率,我們可以使用函數,因為函數在處理數據方面的確具有很大的優勢,這次我們分享9個常用的excel函數,只要熟練掌握這個9個常用的函數,將會大大提高我們日常工作的效率。
  • Excel中提取指定文本的6種應用技巧解讀!
    在實際的工作中,從指定的字符串中提取指定文本也是常用的技巧之一,除了手動操作之外,下文的8種應用技巧也是必須要掌握的。一、Left函數法。功能:從指定文本字符串的第一個字符開始,提取指定長度的字符串。四、Left+Find函數法。用Left、Mid和Right函數提取指定的字符串時,字符串之間要有一定的規律,如果地址為「烏魯木齊市天山區萬寧村」,則用上述方法提取的「市」和「區」都是有誤的。
  • if函數的嵌套使用技巧,sumif函數和averageif函數的應用
    我們都清楚excel自帶的函數功能強大,只要我們善於使用excel函數,就可以顯著提高我們的工作效率,減輕我們的工作負擔。sumif函數和averageif函數的應用今天我們要分享的是if函數嵌套的使用技巧,我們以兩個比較經典的函數與