當我們在使用Excel進行辦公的時候,有時候我們會碰到需要將多列數據合并到一列的情況,該如何實現呢?小編在這教大家使用WPS表格公式法將多列數據合并為一列,歡迎閱讀。
WPS表格公式法將多列數據合并為一列的方法
教程簡介:這是一個利用 OFFSET 函數嵌套 MOD函數、INT函數、ROW函數 來實現將多列數據合并為單列數據的教程。
WPS表格公式法將多列數據合并為一列的方法圖1
我們可以使用 OFFEST 函數嵌套 MOD、INT、ROW 等函數,來實現這一個需求。
公式 1
=OFFSET($A$2,MOD(ROW(A2)-2,4),INT((ROW(A2)-2)/4))
公式講解
WPS表格公式法將多列數據合并為一列的方法圖2
1、OFFSET函數:
offset 在英語中是偏移量的意思。OFFSET 函數的作用,就是以一個指定的單元格為參照系,然后通過列、行的偏移,返回一個新的引用。
比如我想求得圖1中,A2單元格向下3列,向右2列的單元格的值,可以使用下面的公式:
=OFFSET(A2,3,2)
WPS表格公式法將多列數據合并為一列的方法圖3
WPS表格公式法將多列數據合并為一列的方法圖4
A1單元格向下偏移3行,向右偏移2列,最終到達的是C5單元格。因此計算結果為C5單元格的值:C4。
回到題目,要達到多列數據合并為一列的需求,我們也可以用 OFFSET 函數來實現。
我們先把構建這個公式所需要的各個參數列舉出來:
WPS表格公式法將多列數據合并為一列的方法圖5
第一個參數,參照區域,我們采用數據區左上角的單元格,A2。為保證將來公式填充后這個參數的數值不變,我們給它加上絕對引用,變為 $A$2。
第二個參數“所需列偏移量”和第三個參數“所需行偏移量”,需要再另外構建公式。
2、構建列偏移量
從上圖我們可以看到,我們所需的列偏移量是一組數列:0, 1, 2, 3, 0, 1, 2, 3, … 構建這個數列,我們可以采用下面的公式:
=MOD(ROW(A2)-2,4)
WPS表格公式法將多列數據合并為一列的方法圖6
① 求單元格 A2 的行號,計算結果為2。
② 此處填寫數據區左上角所在單元格的行號。在本例中,數據區左上角為 A2 單元格,可以直接填寫 A2 單元格的行號”2”,也可以填寫為公式:ROW($A$2)
③ ①-②,計算結果為0。
④ 此處填寫數據區的總行數。在本例中,數據一共有4行,可以直接填寫4,也可以填寫公式:ROWS($A$2:$A$5)
整個公式表示:求A2單元格的行號,然后減去2,所得結果再除以4,最后求所得余數。計算結果為0。
下圖是構建列偏移量公式時的思路,可參考。
WPS表格公式法將多列數據合并為一列的方法圖7
3、構建行偏移量
從上圖我們可以看到,我們所需的行偏移量是一組數列:0, 0, 0, 0, 1, 1, 1, 1, … 構建這個數列,我們可以采用下面的公式:
=INT((ROW(A2)-2)/4))
WPS表格公式法將多列數據合并為一列的方法圖8
① 求單元格 A2 的行號,計算結果為2。
② 此處填寫數據區左上角所在單元格的行號。在本例中,數據區左上角為 A2 單元格,可以直接填寫 A2 單元格的行號”2”,也可以填寫為公式:ROW($A$2)
③ ①-②,計算結果為0。
④ 此處填寫數據區的總行數。在本例中,數據一共有4行,可以直接填寫4,也可以填寫公式:ROWS($A$2:$A$5)
整個公式表示:求A2單元格的行號,然后減去2,所得結果再除以4,將所得結果向下取整。計算結果為0。
下圖是構建行偏移量公式時的思路,可參考。
WPS表格公式法將多列數據合并為一列的方法圖9
除了上面的 OFFSET 函數外,INDEX 函數也可以完成這一需求:
公式 2
=INDEX($A$2:$C$5,MOD(ROW(A2)-2,4)+1,INT((ROW(D2)-2)/4)+1)
可以看出,兩者的原理是相似的。公式 1 使用 INT 函數和 ROW 函數來計算列偏移量,公式 2 用它來計算列序數。公式 1 使用 MOD 函數和 ROW 函數來計算行偏移量,公式 2 用它來計算行序數。但公式 1 的第一個參數只需要設定數據區左上角單元格的地址($A$2), 公式 2 卻需要設定整個數據區的地址($A$2:$C$5);而且 公式 2 在計算行序數、列序數時也比 OFFSET 在計算行偏移量、列偏移量時多了一步(最后面的"+1"),所以如果嚴格比較,還是使用 OFFSET 函數來計算更方便些。






