編按:哈嘍,大家好!看到標題相信大家都會納悶吧。複製粘貼不是excel中最簡單,最基礎的操作嗎?怎麼可能90%的人都不會呢?今天咱們要說的可不是普通的複製粘貼,而是將數據複製粘貼到篩選後的區域中。說到這裡可能又有小夥伴們疑惑了,「小編,你可別逗我,數據是不能直接複製粘貼到篩選後的區域中的,這可是常識!」別著急,跟著小編繼續往下看,你就知道了!
************
如果我對你說,我可以將一個連續區域中的值,快速粘貼到篩選後不連續的區域中,你信嗎?例如要將下圖右側連續的「目標值」列粘貼到篩選過後不連續的「目標粘貼區域」列中。
剛好今天呢,我在公司做了一個實驗,問了同事們上圖這樣的問題,同事們給我的回答都是出奇的一致,好像是商量好似的,都說「怎麼可能啊,誰都知道篩選後的區域,是無法直接再複製粘貼數據過去的」,我:「額…一個白眼,自行體會」。
相信這也是大多數人的看法,不過方法還是有的。
是不是有點小好奇,這是怎麼做到的?想學的話,就繼續往下看吧。
為了有對比性,我們先來試一下大家都會的CTRL+C、CTRL+V,直接複製粘貼後的效果:
什麼鬼?只顯示了一個數字,那其他數字呢?讓我們把篩選結果全部展開來看一下。(如下圖所示)
哦,原來隱藏掉的部分也會被複製粘貼啊!
試驗結論:此路不通。
看來還真沒有那麼容易,要好好動動腦筋才行。所謂思路才是王道,有時候思路比方法更重要,讓我們一起來好好分析一下吧:
我們的目標:需要把一列連續的數據,直接複製粘貼到篩選後的區域中。其中被篩選掉的部分不需要被複製粘貼到。
目前的障礙:無法直接進行複製粘貼,被篩選掉的數據也會被複製粘貼到。
想辦法解決:既然不能直接複製粘貼,那我們不妨換一種思路,從複製粘貼的定式思維里跳出來,重新審視這個問題。仔細分析,其實這也是個「查找」的問題啊,我們直接把那幾個數查找過來不就成了!
等一下,什麼,查找?這路子一下子就變寬了。查找有一系列給力的函數,比如(V)LOOKUP、INDEX等,其中VLOOKUP不能直接使用,因為不滿足它的查找條件,除非使用輔助列在兩個區域左邊各加一列相同欄位,如1/2/3等,就可以實現。但是太麻煩,不能滿足我們想立馬粘貼的需求。
那看看INDEX吧,哎呀哈,貌似還可以。INDEX的語法是:INDEX(array,row_num,column_num) ,用於在給定的單元格區域中,返回特定行列交叉處單元格的值或引用。關於INDEX詳細的使用方法,小夥伴們可以參考之前的教程《INDEX:函數中的精確制導飛彈,最強大的瘸子》,此處不做贅述了。
我們來應用一下,得出了第一個數,但還不能直接往下拉得到後面的結果。
這該怎麼解決呢?我們先把這個函數剝開,會發現查找區域$C$12:$C$14是固定的,列數也是固定的1列,只有行數是不固定的,所以只要把行數搞定就可以了。
現在開始專攻行數。行數是個變量,本例中的行數分別為1、2、3,如果我能用一個函數,讓它直接返回行數1、2、3,而且可以忽略隱藏行不計,那就好了。
真有這樣的函數嗎?答案是,當然有!
那就是大名鼎鼎的SUBTOTAL函數。為什麼說它大名鼎鼎,因為SUBTOTAL函數是excel中唯一一個能忽略隱藏單元格,統計用戶可見單元格的函數,具有不可替代性。正好是我們今天所需要的。
SUBTOTAL的語法是SUBTOTAL(function_num,ref1,ref2, ...),function_num所對應的功能參數有很多,整理後如下圖所示。關於SUBTOTAL詳細的使用方法,小夥伴們可以參考之前的教程《以一敵十的SUBTOTAL函數,你怎能錯過?》,在此就不細說了。
因為是統計篩選後的結果,所以選擇參數103或者3都是可以的。若不是統計篩選後的結果而是統計隱藏行後的結果,就只能用103了。接下來本例會用參數103來進行演示和說明。
我們將上面的INDEX公式中,代表行數的「1」用SUBTOTAL替換,就是=INDEX($C$12:$C$14,SUBTOTAL(103,$B$3:B3),1),結果如下,大功告成。
為了方便大家更好的理解,帶大家來操作一下,可以跟著一起做哦,請看下方動圖演示:
以上就是今天的內容,我們將看似不可能的事情變成了可能,最重要的就是學會動腦筋,然後運用excel解決問題。小夥伴們趕緊打開excel,來練習一下吧。
****部落窩教育-excel篩選數據複製粘貼****
原創:劉宏玲/部落窩教育(未經同意,請勿轉載)
更多教程:部落窩教育(www.itblw.com)
微信公眾號:exceljiaocheng