二維碼 購物車
部落窩在線教育歡迎您!

將excel中的數(shù)據(jù)按照指定數(shù)量進行重復(fù),非得用VBA才能實現(xiàn)嗎?

 

作者:老菜鳥來源:部落窩教育發(fā)布時間:2019-10-09 17:48:37點擊:5027

分享到:
0
收藏    收藏人氣:0人
版權(quán)說明: 原創(chuàng)作品,禁止轉(zhuǎn)載。

編按:

哈嘍,大家好!今天分享一位群友的問題,大致需求是要將excel中的數(shù)據(jù)按照指定的數(shù)量進行重復(fù)。問題一經(jīng)發(fā)布,得到的回答大多是讓這位小伙伴使用VBA來解決,但是對于一般的職場人士而言,能掌握VBA的可以說是寥寥無幾。那除了VBA外還有沒有其他的解決方法呢?答案是肯定的。今天老菜鳥就給大家分享一個使用常用函數(shù)就能解決這個問題的妙招,一起來看看吧!

 

今天在群里看到一位群友的問題,要求很簡單,將A列數(shù)據(jù)整理為B列的效果,如圖所示:

 

 

為了便于理解問題,將數(shù)據(jù)按顏色進行了分類,簡單來說,A列是對品牌、型號和數(shù)量進行合并后的一個描述,現(xiàn)在需要按照數(shù)量將數(shù)據(jù)進行拆分。

 

為什么會有這樣的問題我們不做討論,但是如果遇到這樣的問題應(yīng)該怎么解決,才是我們關(guān)注的重點。

 

問題一發(fā)出來,大多數(shù)回復(fù)都是用VBA解決,但對于一般的職場人士來說,掌握VBA這個技術(shù)的寥寥無幾,通常我們只會幾個函數(shù),一些基礎(chǔ)操作而已,那么這個問題還有救么?

 

其實只要搞明白問題的特點,解決的方法總是有的,下面就和老菜鳥一起嘗試通過一些基本的函數(shù)和操作來處理這個貌似只有VBA才能解決的問題吧。

 

解決這個問題大致上分為以下幾個步驟:

 

第一步:提取數(shù)量

 

如果你使用的是Excel2013及以上版本的話,這個就很容易,輸入第一個數(shù)字,回車后按Ctrl+E組合鍵就可以完成。

 

 

如果你的版本還沒有這個功能,也不用灰心,因為上圖中數(shù)字出現(xiàn)的位置還是比較有規(guī)律的,用公式提取也是完全可以的。

 

公式:=SUBSTITUTE(MID(A2,FIND("/",A2)+2,9),"",""),結(jié)果如圖所示:

 

 

這個公式也是提取類問題的一個常用套路,首先找到"/"這個內(nèi)容在單元格中出現(xiàn)的位置,然后再用MID函數(shù)提取出“3臺”,最后用SUBSTITUTE函數(shù)將""這個字替換為空,就得到了所需要的數(shù)字。

 

提取數(shù)字的思路有很多,只要得到需要的結(jié)果就可以了。

 

第二步:得到一組數(shù)字,為第三步做準(zhǔn)備

 

這一步就很簡單了,在C1單元格輸入1,C2單元格輸入公式:=B1+C1,然后下拉得到一組數(shù)字,操作過程如圖所示:

 

 

得到這么一串?dāng)?shù)字有什么用呢?看完第三步操作就明白了。

 

第三步:利用LOOKUP函數(shù)按照指定的重復(fù)數(shù)量排列

 

 

公式=LOOKUP(ROW(A1),$C$2:$C$5,$A$2:$A$5)的作用很明顯,就是把A列的內(nèi)容按照數(shù)量重復(fù)排列了出來。

 

這個公式利用了LOOKUP的基本套路,不熟悉這個套路的小伙伴可以看看往期教程。

 

簡單分析一下公式的原理,首先,在這個公式中,查找值(也就是第一參數(shù))不是固定的,而是用了ROW(A1),這樣公式在下拉的時候,查找值就會依次變成1、23……

 

條件區(qū)域使用的是我們在上一步中得到的那組數(shù)字,LOOKUP有個特性,當(dāng)LOOKUP函數(shù)找不到查找值時,會與查找區(qū)域中小于或等于查找值的最大值進行匹配。

 

換句話說,查找區(qū)域中只有1、46、8這四個數(shù)字,當(dāng)查找值為12、3的時候,查找區(qū)域中小于這三個數(shù)字的只有1,因此得到的就是結(jié)果區(qū)域(也就是第三參數(shù))中的第一個值。

 

以此類推,當(dāng)查找值為4、5的時候,小于這兩個數(shù)字的有14,二者中最大的是4(是條件區(qū)域中的第二個數(shù)),因此得到的就是結(jié)果區(qū)域中的第二個值。

 

第三步完成后,結(jié)果已經(jīng)非常接近最終的目標(biāo)了,最后一步只需要將數(shù)量都變成1即可。

 

第四步:將產(chǎn)品數(shù)量變?yōu)?span>1

 

還是使用一個公式來實現(xiàn),公式為:=LEFT(D2,FIND("",D2))&"/1"

 

 

公式的作用就是用LEFT+FIND函數(shù)組合將D列中""字之前的內(nèi)容提取出來,然后統(tǒng)一添加"/1",就得到了最終的結(jié)果。

 

總結(jié):遇到一些相對復(fù)雜的問題時,首先要理清問題的要點,利用自己已經(jīng)掌握的技術(shù)一點一點去實現(xiàn),能達到目的的一切方法都值得一試。

 

本文配套的練習(xí)課件請加入QQ群:264539405下載。

Excel高手,快速提升工作效率,部落窩教育《一周Excel直通車》視頻和《Excel極速貫通班》直播課全心為你!

掃下方二維碼關(guān)注公眾號,可隨時隨地學(xué)習(xí)Excel

IMG_256

相關(guān)推薦:

區(qū)間查詢(上篇)老是加班還沒加班費?誰讓你不會excel區(qū)間查詢的三大套路!

Substitute函數(shù)應(yīng)用《Excel函數(shù)經(jīng)典案例:substitute函數(shù)應(yīng)用

Excel目錄的制作方法用GET.WORKBOOK函數(shù)實現(xiàn)excel批量生成帶超鏈接目錄且自動更新