Microsoft Excel是Microsoft為使用Windows和Apple Macintosh操作系統的電腦編寫的一款電子表格軟件。直觀的界面、出色的計算功能和圖表工具,再加上成功的市場營銷,使Excel成為最流行的個人計算機數據處理軟件。 需要將相同編號對應的人名合并到一個單元格內,也就是說她想要將下圖【表1】轉換成【表2】的樣式。喲西,好家伙,這個表有16000多行,要是手工做,那不得累出肩周炎、下肢靜脈曲張等毛病。首先,我們先來看下她要的效果: 【表1】原表↓![]() ![]() 一、 首先,我們先來說說函數解:(注意在此題中如使用函數解,A列必須要先排序,將同樣編號的排到一起這是關鍵。后面我會介紹另外一種透視表的解法,什么,你說透視表做不到,今天我就讓你瞧一瞧,^-^) 1.?首先在C列加一輔助列,標記上逗號 2.?在D2輸入公式:=IF(A2=A3,"",PHONETIC(INDIRECT("b"&MATCH(A2,$A$1:A565,0)):C2))并將其下拉填充至末尾。 3.?篩選D列不為空的即獲得需要的效果。? 效果如下圖所示:↓ ![]() 我們來簡單說下上面公式的含義:? MATCH(A2,$A$1:A565,0)這段是指找各個編碼第一次出現的起始位置,MATCH函數是EXCEL主要的查找函數之一,當MATCH函數第三參數為0時表示精確查找,該函數通常有以下幾方面用途: (1)確定列表中某個值的位置; (2)對某個輸入值進行檢驗,確定這個值是否存在某個列表中; (3)判斷某列表中是否存在重復數據; (4)定位某一列表中最后一個非空單元格的位置。 技巧:查找文本值時,函數 MATCH 不區分大小寫字母。? INDIRECT("b"&MATCH(A3,$A$1:A566,0)):C3)這段是將MATCH找到的起始位置與C列當前行所在的單元格做為終點進行連接形成單元格區域,隨著下拉它會動態變化,這是相對引用的特點,然后利用INDIRECT間接引用得到該區域內的值。 PHONETIC(INDIRECT("b"&MATCH(A2,$A$1:A565,0)):C2)這段是將上一步所獲得的值進行拼裝,將其連接到一起。 =IF(A2=A3,"",PHONETIC(INDIRECT("b"&MATCH(A2,$A$1:A565,0)):C2))最后做個判斷是否顯示,如果A列下一行與本行內容相同,那么就不顯示,否則將它顯示出來。 不錯,這里用到了函數的嵌套,可能有些小伙伴會對函數嵌套會覺得它出身高貴,難以親近,妹子你等著,哥給你介紹另外一種不嵌套的。 二、 如果你在用2016,不防試下數據模型數據透視表中CONCATENATEX函數,具體操作方法如下: 1.?光標放在A1:B37區域中的任一單元格,按CTRL+T快速插入【表】,表名為【表1】 ![]() ![]() 3.?在【Power Pivot】選項卡-【度量值】-新建度量 ![]() 4.?在彈出的對話框中輸入公式,如下圖所示:? ![]() 該公式的用途為文本合并,第一參數與第二參數為必需,第三參數可選, =CONCATENATEX('表1','表1'[人名],",")這個函數的白話意思就是要聯接哪張表里的哪個字段下的內容,用哪個分隔符連接。CONCATENATEX第三參數為分隔符。我這里用的是用逗號分隔,如果你要用頓號分隔,改成這樣即可:CONCATENATEX('表1','表1'[人名],"、")。 5.?光標放在A1:B37區域中的任一單元格在插入數據透視表,并勾選【將此數據添加到數據模型】 ![]() 6.?將編碼拉到行字段,度量值1拉到值字段,如下圖所示: ![]() 7.?選中透視表,右鍵刪除總計,字段名改成你要的即可。 ![]() Excel整體界面趨于平面化,顯得清新簡潔。流暢的動畫和平滑的過渡,帶來不同以往的使用體驗。 |
溫馨提示:喜歡本站的話,請收藏一下本站!