excel字符合并技巧:幾種連接字符串的方法助你高效辦公

編按:哈嘍,大家好!用excel連接字符串,是我們?cè)谌粘9ぷ髦?,比較常用的技巧。相信大家使用最多的連接方式就是“&”。但其實(shí),在excel中連接字符串的方法有很多,并且,看似不怎么起眼的連接字符串在某些特定的場(chǎng)合卻有著神奇的妙用。是不是很好奇呢?趕緊跟著作者E圖表述的步伐,來(lái)看看吧!
*********
【前言】
在使用EXCEL的實(shí)際應(yīng)用中,我們經(jīng)常會(huì)為了統(tǒng)計(jì)方便,把數(shù)據(jù)元素分的相對(duì)詳細(xì)一些,那么統(tǒng)計(jì)的維度也就會(huì)多一些。同樣的,有的時(shí)候我們也需要把拆分的很詳細(xì)的內(nèi)容,再合并成一個(gè)內(nèi)容放在一個(gè)單元格中,有可能是為了引用,也有可能是為了標(biāo)識(shí)或者閱讀。舉一個(gè)常見(jiàn)小例子——比如說(shuō)《日數(shù)據(jù)匯報(bào)》。

為了統(tǒng)計(jì)方便,我們一定會(huì)做成1:2行的內(nèi)容;可是如果領(lǐng)導(dǎo)需要我們做匯報(bào),建議還是制作成5:8行的方式,這樣可讀性更高。
【正文】
為了更加便捷的使用EXCEL處理這類問(wèn)題,EXCEL給我們準(zhǔn)備了很多的方法——&、CONCATENATE、PHONETIC函數(shù)來(lái)處理,也會(huì)有一些“外力”的方式來(lái)解決。今天我們就用同一個(gè)模擬數(shù)據(jù)來(lái)給大家分別地介紹,希望能夠讓同學(xué)們?cè)谟龅筋愃频膯?wèn)題時(shí),可以不至于手忙腳亂。
【數(shù)據(jù)源】

數(shù)據(jù)源處理需求:連接每個(gè)字段的值,形成新的字符串填入H列。
我們的模擬數(shù)據(jù),采用了“純數(shù)字”的格式,為了便于字符串連接的通用性,我們也使用了“一位數(shù)字”的方式,大家可以把其中的某個(gè)數(shù)字理解為需要連接的字符串亦可,看下面內(nèi)容之前,先想想我們會(huì)采用什么方式解決。帶著思考學(xué)習(xí),將對(duì)于同學(xué)們吸收知識(shí)和靈活應(yīng)用函數(shù)大有裨益。
【解法】
方法一

I2單元格函數(shù):
=A2&B2&C2&D2&E2&F2&G2
這個(gè)應(yīng)該是同學(xué)們使用最多的連接字符串的方式了,沒(méi)有什么好多介紹的。
方法二

I2單元格函數(shù):
=CONCATENATE(A2,B2,C2,D2,E2,F2,G2)
CONCATENATE函數(shù)最多可以連接255個(gè)參數(shù),總字符最大不得超過(guò)8192個(gè)。在EXCEL365版本中,有幾個(gè)新的函數(shù),其中CONCAT函數(shù)算是CONCATENATE函數(shù)的升級(jí)版了,但是因?yàn)楦甙姹镜腅XCEL還不是那么普及,我們就不說(shuō)這些沒(méi)法讓大家都測(cè)試的內(nèi)容了。
另外,很多人都說(shuō)EXCEL2016版本有這幾個(gè)新增的函數(shù)TEXTJOIN、CONCAT、IFS、DATESTRING、NUMBERSTRING、IFS、MINIFS、MAXIFS,但是據(jù)作者E圖表述所知,不是所有的EXCEL2016版本都有這幾個(gè)函數(shù)。據(jù)說(shuō)在EXCEL2016版本測(cè)試的時(shí)候是有這幾個(gè)函數(shù)的,但出了EXCEL365版本之后,就在EXCEL2016中取消了。不得而知吧,如果大家有條件的話,還是建議使用高版本的EXCEL,可以嘗試很多新功能。
方法三

I2單元格函數(shù):
{=SUM(A2:G2*10^(COUNTA(A2:G2)-COLUMN(A:G)))}
這是一個(gè)數(shù)組函數(shù),需要在輸入完函數(shù)的時(shí)候,以“CTRL+SHIFT+ENTER”三鍵結(jié)束函數(shù)錄入,而且只適用于單元格中是一位數(shù)字的數(shù)據(jù)源。
函數(shù)解析:
這個(gè)函數(shù)利用了數(shù)學(xué)思維,以第一行的數(shù)據(jù)為例,思路如下表:

那么我們看看每一位上對(duì)應(yīng)的“0”有什么規(guī)律,我們的函數(shù)是不是很完美的達(dá)到了我的要求:

由上表我們就可以看出COUNTA(A2:G2)-COLUMN(A:G)這部分函數(shù),可以幫我們計(jì)算出每一位上會(huì)有幾個(gè)0,在用10^(^是乘冪的意思,相當(dāng)于POWER函數(shù)的用法)確定每一個(gè)字段中的數(shù)字是哪位數(shù)。如10^6?,即10的6次方,就等于1000000,整體的函數(shù)如下表所列:

再把對(duì)應(yīng)的乘積相加是不是就是我們的結(jié)果了?在這里要給同學(xué)們一個(gè)建議:如果想學(xué)好數(shù)組函數(shù),就一定要提高“邏輯思維”的能力,上面的這三張表就是我們數(shù)組函數(shù)的計(jì)算過(guò)程,我們編寫這個(gè)函數(shù)的過(guò)程,基本就是以這個(gè)思路,再選擇相對(duì)應(yīng)的函數(shù)來(lái)編輯的。也就是說(shuō)能夠允許我們沒(méi)有計(jì)算機(jī)運(yùn)行的速度,但是一定要有和計(jì)算機(jī)一樣的運(yùn)行思路。
方法四
巧借其他程序來(lái)解決。?

為了EXCEL函數(shù)“小白”們?nèi)粘R灿泻玫姆椒ú僮鬟@類問(wèn)題,作者E圖表述也給你們總結(jié)出這個(gè)方法,純操作,但是也是“秒殺”式的得到結(jié)果,希望能幫到不同程度的同學(xué)是作者的初心。
方法五
前面說(shuō)了這么多方法,但是肯定有人會(huì)說(shuō)“作者漏了一個(gè)函數(shù)”。
是的,對(duì)于連接字符串這類問(wèn)題,確實(shí)還有一個(gè)函數(shù)可以使用——PHONETIC函數(shù)。還記得我們開(kāi)篇說(shuō)的這個(gè)數(shù)據(jù)源的問(wèn)題嗎?我們用的是“數(shù)值格式的數(shù)字”,對(duì)于這個(gè)格式的數(shù)據(jù),PHONETIC函數(shù)是不能夠連接的。那么這道題就不能用PHONETIC函數(shù)了嗎?當(dāng)然可以用啦。

同學(xué)們看明白了嗎?當(dāng)我們將單元格格式設(shè)置為文本之后,再次輸入數(shù)字,PHONETIC函數(shù)就可以連接這些內(nèi)容了。但一個(gè)一個(gè)的輸入,確實(shí)很累,這時(shí)候我們可以選中源數(shù)據(jù)區(qū)域中的某列數(shù)據(jù),使用“分列”功能,將數(shù)據(jù)逐列轉(zhuǎn)換為文本,那么這個(gè)題就解決了。
?
【應(yīng)用】
作者E圖表述所作的一切EXCEL教程,都是本著一個(gè)宗旨:不做通用基礎(chǔ)教程,不做沒(méi)有實(shí)際意義的教程,力求“簡(jiǎn)單暴力”的解決同學(xué)們工作中的問(wèn)題。所以我認(rèn)為:沒(méi)有實(shí)際案例的教程都是耍流氓!那么今天的“連接字符串”的功能有什么實(shí)際存在的意義呢?
?
案例一:制作日數(shù)據(jù)匯報(bào)

前文的小案例展示還記得吧,如果你細(xì)心、耐心地看到了這里,那么就可以看到更加優(yōu)化的日數(shù)據(jù)匯報(bào)的格式。我們?cè)贏6單元格輸入函數(shù)(我們這里合并了A6:C6區(qū)域單元格,再縮進(jìn)3個(gè)字節(jié),是為了轉(zhuǎn)發(fā)時(shí)更美觀。)
="匯報(bào)日期:"&
TEXT(A2+1,"yyyy年mm月dd日")&
CHAR(10)&
"????? 28日營(yíng)業(yè)額:"&ROUND(B2/10000,2)&"萬(wàn)元,"&
CHAR(10)&
"??????上周營(yíng)業(yè)額:"&ROUND(C2/10000,2)&"萬(wàn)元,"&
CHAR(10)&
"??????本周已銷售:"&ROUND(D2/10000,2)&
"萬(wàn)元!"
使用“&”連接了各個(gè)字符串,由此我們可以發(fā)現(xiàn),無(wú)論是函數(shù)返回值、文本字符串都可以使用“&”連接。接著使用CHAR(10)返回?fù)Q行符,使要發(fā)送的內(nèi)容更有層次感,這樣我們?cè)谝l(fā)送數(shù)據(jù)的時(shí)候,直接復(fù)制粘貼,再點(diǎn)發(fā)送就完工了。
這里值得一說(shuō)的是:字符串連接后,其中的任何內(nèi)容都是不帶格式的,比如日期格式、會(huì)計(jì)專用格式等等,在字符串連接后只保留常規(guī)格式,所以我們經(jīng)常需要使用其他函數(shù)來(lái)轉(zhuǎn)換,就像案例中的TEXT函數(shù)將數(shù)據(jù)的格式轉(zhuǎn)換成日期格式一樣。
案例二:快速制作數(shù)據(jù)有效性的下拉內(nèi)容
用數(shù)據(jù)驗(yàn)證制作下拉菜單,相信很多同學(xué)都會(huì),如果只有三、五種選項(xiàng),我們直接在數(shù)據(jù)驗(yàn)證窗口中錄入就好了。如果內(nèi)容很多的話,我們也可以使用名稱管理器。那么借今天文章的主題,我們也可以采用PHONETIC函數(shù)來(lái)制作。

當(dāng)然,從建模的角度來(lái)說(shuō),對(duì)于下拉菜單的做法,作者E圖表述還是主推“自定義名稱”結(jié)合“數(shù)據(jù)驗(yàn)證”的方式來(lái)做,可以形成動(dòng)態(tài)的下拉菜單內(nèi)容。本案例是幫助不會(huì)復(fù)雜操作的同學(xué),也可以有一個(gè)快速操作的體驗(yàn)而設(shè)計(jì)的。
案例三:經(jīng)典嵌套INDIRECT+CONCATENATE
我們還用之前的數(shù)據(jù),假設(shè)我們要把表《方法一》到表《方法五》中,每個(gè)表中的A列數(shù)據(jù)求和,列在一個(gè)匯總表里(典型的總-分式匯總表)。如下圖所示:

B2單元格輸入函數(shù):
{=SUM(--INDIRECT(CONCATENATE(A2,"!A2:A16")))}
輸入完成后,按數(shù)組函數(shù)的結(jié)束鍵CTRL+SHIFT+ENTER三鍵結(jié)束。
函數(shù)解析:
A2單元格的值為“方法一”,“!A2:A16”是一個(gè)字符串,用CONCATENATE函數(shù)將二者連接起來(lái),就形成了一個(gè)跨表引用的地址文本值。

再用INDIRECT函數(shù),“激活”這個(gè)地址,形成引用,最后用SUM函數(shù)對(duì)這個(gè)區(qū)域內(nèi)容求和即可。不熟悉INDIRECT函數(shù)的小伙伴可以閱讀下往期教程《大神專用求和公式!帶你揭秘自動(dòng)統(tǒng)計(jì)前幾名數(shù)據(jù)合計(jì)的新套路?。ㄏ缕?/span>》
為什么用了“--”?日常中我們可以不使用“--”和“三鍵”的,因?yàn)槲覀儎偛虐选斗椒ㄎ濉分械腁列分列成了“文本”格式,SUM不能對(duì)文本數(shù)據(jù)求和,所以這里我們用了“--”,將文本型數(shù)據(jù)轉(zhuǎn)換成了數(shù)值型數(shù)據(jù)。
?
【編后語(yǔ)】
&、CONCATENATE函數(shù)、PHONETIC函數(shù),我們都有了整體的介紹,也都給際了一個(gè)案例的展示,實(shí)工作中還是要看每個(gè)人對(duì)于函數(shù)原理的理解和使用思路,函數(shù)語(yǔ)法和功能是死的,只有明白其應(yīng)用的范疇,才可以靈活掌握。今天的教程就到這里了,多加練習(xí)吧。
****部落窩教育-excel合并單元格內(nèi)容****
原創(chuàng):E圖表述/部落窩教育(未經(jīng)同意,請(qǐng)勿轉(zhuǎn)載)
更多教程:部落窩教育(www.itblw.com)
微信公眾號(hào):exceljiaocheng