簡體   English   中英

如何在Excel中合並多個列

[英]How to combine multiple columns in excel

我正在使用以下公式,該公式在excel中最多包含3列:

=INDIRECT("A"&ROUNDUP((ROW())/PRODUCT(COUNTA($B$1:$B$98),COUNTA($C$1:$C$98)),0))&" "&INDIRECT("B"&MOD(ROUNDUP((ROW())/COUNTA($C$1:$C$98),0)-1,COUNTA($B$1:$B$98))+1)&" "&INDIRECT("C"&MOD(ROUNDUP((ROW()),0)-1,COUNTA($C$1:$C$98))+1)

它將基本上合並如下三列的內容:

在此處輸入圖片說明

3列效果很好,但是,我嘗試修改公式以支持第4列(也許還有更多列),但是沒有正確組合單詞。 我想知道是否有人可以告訴我如何修改它以使其與4列或更多列一起使用。

謝謝!

如果分解公式,您會注意到涉及到對INDIRECT的調用的模式,因此刪除每個列的內部公式,您將得到以下內容:

=INDIRECT("A"&XXX)
&" "&INDIRECT("B"&YYY)
&" "&INDIRECT("C"&ZZZ)

其中XXXYYYZZZ是每列的相應公式。 因此,您所需要做的就是附加一個額外的&" "&INDIRECT("D"&TTT) ,其中TTT是新的第四列的公式。

擴展我的答案,您正在尋找的功能如下所示:

=INDIRECT("A"&ROUNDUP((ROW())/PRODUCT(COUNTA($B$1:$B$98),COUNTA($C$1:$C$98),COUNTA($D$1:$D$98)),0))&" "&INDIRECT("B"&ROUNDUP((ROW())/PRODUCT(COUNTA($C$1:$C$98),COUNTA($D$1:$D$98)),0))&" "&INDIRECT("C"&MOD(ROUNDUP((ROW())/COUNTA($D$1:$D$98),0)-1,COUNTA($C$1:$C$98))+1)&" "&INDIRECT("D"&MOD(ROUNDUP((ROW()),0)-1,COUNTA($D$1:$D$98))+1)

分解一下,您會注意到最后3個INDIRECT調用與您現有的INDIRECT調用相同,除了所有引用都移動了一個字符(即A變為B,B變為C,C變為D)。 現在查看新的第一個INDIRECT調用,並將其與第二個調用進行比較:

INDIRECT("A"&ROUNDUP((ROW())/PRODUCT(COUNTA($B$1:$B$98),COUNTA($C$1:$C$98),COUNTA($D$1:$D$98)),0))
INDIRECT("B"&ROUNDUP((ROW())/PRODUCT(COUNTA($C$1:$C$98),COUNTA($D$1:$D$98)),0))

您應該注意到它們的不同之處僅在於第一行在PRODUCT函數內還有一個附加的,COUNTA($D$1:$D$98)代碼。 使用這些觀察結果,您應該可以將公式擴展到其他列,但是正如@Tim Biegeleisen所說,如果您打算擴展函數,則應該尋找其他方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM