上周聽技術(shù)部分享簡書的時(shí)候,基本處于聽不懂狀態(tài),于是暗暗決定本周也要寫篇技術(shù)類的,最好也讓技術(shù)人員看不懂。哈哈。。。
題目是上周就想好的,其實(shí)連下周的題目也想好了。就看到時(shí)候有沒有空去深入尋找答案了。
一、問題描述
最近在研究如何把多列excel變成一列,如下圖所示。

可能有些人會(huì)說,三次復(fù)制轉(zhuǎn)置黏貼即可。對(duì)于數(shù)據(jù)少是可以的,當(dāng)數(shù)據(jù)很多的時(shí)候,就不行了。于是我就百度了一下,看有沒有什么好的方法,用公式來實(shí)現(xiàn)它。
終于功夫不負(fù)有心人,找到了答案,但是理解答案花了不少時(shí)間。接下來就來和大家分享一下。
二、函數(shù)講解
首先說一下答案:=OFFSET($A$1,INT((ROW()-1)/4),MOD(ROW()+3,4))
這個(gè)公式里牽涉到4個(gè)函數(shù),分別是OFFSET,INT,ROW,MOD,接下來就分別介紹一下他們是什么意思。
1、OFFSET函數(shù):引用某個(gè)單元格或區(qū)域,它的語法是
OFFSET(reference,rows,cols,height,width),舉個(gè)例子大家就能明白。

通俗點(diǎn)說,以A1為起點(diǎn),向下移動(dòng)2行,向右移動(dòng)兩列,區(qū)域?yàn)?的單元格。
例子是以A1(1)向下移動(dòng)2行(9)向右移動(dòng)2(11)就是11。
2、ROW函數(shù):返回行數(shù),它的語法是ROW(),舉個(gè)例子

C2所在的單元格是在第2行,所以ROW(C2)=2
展開一下,COLUMN()為返回列數(shù),所以COLUMN(C2)=3
3、INT函數(shù):取整函數(shù),舉例:INT(0.5)=0
4、MOD函數(shù):求余函數(shù),舉例:MOD(5,2)=1
三、題目分析
根據(jù)OFFSET函數(shù),如果一個(gè)一個(gè)寫,就如同下圖,然后分析一下規(guī)律。

分析:第一個(gè)數(shù)字,每4個(gè)遞增1,后面一個(gè)數(shù)字為0-3循環(huán)。
第一個(gè)數(shù)字可以通過:INT((ROW(A1)-1)/4)來實(shí)現(xiàn);
第二個(gè)數(shù)字可以通過:MOD(ROW(A1)+3,4)來實(shí)現(xiàn);
寫好第一個(gè)公式下拉即可。
其實(shí)這個(gè)方法我還真想不出來,需要根據(jù)數(shù)字的變化來找規(guī)律。如果是5列變1列,那就把4改為5,+3變?yōu)?4即可。
以上就是我本周的簡書分享,希望有人能看懂吧!