在Torow函數(shù)的幫助下,將一系列單元范圍變成單行的快速方法。
Microsoft Excel 365引入了幾個新功能,以執(zhí)行各種陣列的操作。使用Torow,您可以立即執(zhí)行范圍對行轉(zhuǎn)換。這是此新功能可以完成的任務(wù)列表:
Excel Torow功能
Excel中的Torow函數(shù)用于將數(shù)組或范圍的單元格轉(zhuǎn)換為一行。
該函數(shù)總共需要三個參數(shù),其中僅需要第一個參數(shù)。
Torow(數(shù)組,[忽略],[scan_by_column])在哪里:
數(shù)組(必需) - 一個數(shù)組或范圍,要轉(zhuǎn)換為單行。
忽略(可選) - 確定是忽略空白還是/和錯誤??梢圆捎靡韵聝r值之一:
- 0或省略(默認) - 保留所有值
- 1-忽略空白
- 2-忽略錯誤
- 3-忽略空白和錯誤
scan_by_column (可選) - 定義如何掃描數(shù)組:
- false或省略(默認) - 通過行水平掃描數(shù)組。
- true-通過列垂直掃描數(shù)組。
尖端:
- 要將數(shù)組轉(zhuǎn)換為單列,請使用托托爾函數(shù)。
- 要預(yù)構(gòu)形成反向行到陣列轉(zhuǎn)換,請使用Wrapcols功能包裹到列中或Wraprows函數(shù)將數(shù)組包裝成行。
- 要將行變成列,請使用轉(zhuǎn)置函數(shù)。
托洛的可用性
Torow是一個新功能,僅在Microsoft 365(用于Windows和Mac)的Excel中支持,并為Web提供Excel。
Excel中的基本Torow公式
要進行簡單的范圍對行轉(zhuǎn)換,請使用其基本形式的Torow公式。為此,您只需要定義第一個參數(shù)(數(shù)組)。
例如,要將一個由3列和3行組成的二維數(shù)組變成一行,該公式為:
=TOROW(A3:C6)
您只需將公式輸入一個單元格(在我們的情況下為A10),并且它會自動溢出到所需的盡可能多的單元中,以保持所有結(jié)果。在Excel術(shù)語中,被薄藍色邊框包圍的輸出范圍稱為溢出范圍。
該公式如何工作:
首先,提供的各種單元格被轉(zhuǎn)化為二維陣列。請注意,逗號限制的列和半分離的行:
{"Apple","Banana","Cherry";1,2,3;4,5,6;7,8,9}
然后,Torow函數(shù)從左到右讀取數(shù)組,并將其轉(zhuǎn)換為一維水平數(shù)組:
{"Apple","Banana","Cherry",1,2,3,4,5,6,7,8,9}
結(jié)果歸于細胞A10,從中溢出到右側(cè)的相鄰單元格中。
將范圍轉(zhuǎn)換為忽略空白和錯誤
默認情況下,Torow函數(shù)可將所有值從源數(shù)組中保留,包括空單元格和錯誤。在輸出中,零值出現(xiàn)在空白單元中,這可能會令人困惑。
要排除空白,請將忽略參數(shù)設(shè)置為1:
=TOROW(A3:C5, 1)
要忽略錯誤,請將忽略參數(shù)設(shè)置為2:
=TOROW(A3:C5, 2)
要跳過,空白和錯誤,請使用3用于忽略參數(shù):
=TOROW(A3:C5, 3)
下圖顯示了所有三個方案的行動:
水平或垂直讀取數(shù)組
借助默認行為,Torow函數(shù)從左到右水平處理數(shù)組。要按列掃描從上到下的值,您將3 rd參數(shù)( scan_by_column )設(shè)置為true或1。
例如,要逐步讀取源范圍,E3中的公式為:
=TOROW(A3:C5)
要按列掃描范圍,E8中的公式為:
=TOROW(A3:C5, ,TRUE)
在這兩種情況下,最終的數(shù)組的大小都是相同的,但是值以不同的順序排列。
將多個范圍合并為一行
要將幾個非貼劑范圍組合到單行中,您首先在Hstack或vStack的幫助下將它們水平或垂直堆疊到一個數(shù)組中,然后使用Torow函數(shù)將組合的數(shù)組轉(zhuǎn)換為一行。
根據(jù)您的業(yè)務(wù)邏輯,以下公式之一將執(zhí)行任務(wù)。
水平堆疊數(shù)組,然后按行轉(zhuǎn)換
在A3:C4中的第一個范圍和A8:C9中的第二范圍內(nèi),下面的公式將水平堆疊到單個數(shù)組中,然后將其轉(zhuǎn)換為從左到右讀取值的行。結(jié)果在下圖中的E3中。
=TOROW(HSTACK(A3:C4, A8:C9))
水平堆棧數(shù)組,并通過列轉(zhuǎn)換
為了從上到下垂直讀取堆疊的數(shù)組,您將Torow的第3個參數(shù)設(shè)置為true,如下圖所示:
=TOROW(HSTACK(A3:C4, A8:C9), ,TRUE)
垂直堆疊數(shù)組,然后按行轉(zhuǎn)換
為了將每個后續(xù)數(shù)組附加到上一個數(shù)組的底部并水平讀取組合數(shù)組,E12中的公式為:
=TOROW(VSTACK(A3:C4, A8:C9))
串聯(lián)陣列垂直并通過列轉(zhuǎn)換
要將每個后續(xù)數(shù)組添加到上一個陣列并垂直掃描組合的數(shù)組,該公式為:
=TOROW(VSTACK(A3:C4, A8:C9), ,TRUE)
為了更好地理解邏輯,請在結(jié)果數(shù)組中觀察不同的值順序:
從一個范圍提取獨特的值
從Microsoft Excel 2016開始,我們擁有一個出色的功能,名為唯一的功能,可以輕松地從單列或行獲得唯一的值。但是,它無法處理多列陣列。為了克服這一限制,請一起使用獨特的和Torow功能。
例如,從范圍A2:C7提取所有不同(不同的)值并將結(jié)果放在一行中,該公式為:
=UNIQUE(TOROW(A2:C7), TRUE)
當Torow返回一維水平數(shù)組時,我們設(shè)置了True獨特的第二個( BY_COL )參數(shù),以將列相互比較。
如果您希望按字母順序排列的結(jié)果,請在排序函數(shù)中包裝上述公式:
=SORT(UNIQUE(TOROW(A2:C7), TRUE), , ,TRUE )
與唯一一樣,by_col的排序參數(shù)也設(shè)置為true。
excel 365-2010的Torow替代方案
在不可用的Torow函數(shù)的Excel版本中,您可以使用一些在較舊版本中起作用的不同功能的組合將范圍轉(zhuǎn)換為單行。這些解決方案更為復(fù)雜,但是它們確實有效。
為了水平掃描范圍,通用公式為:
索引(范圍,商(列(A1)-1,列(范圍))1,mod(列(A1)-1,列( range ))1)為了垂直掃描范圍,通用公式為:
索引(范圍,mod(列(A1)-1,列(范圍))1,商(列(A1)-1,列( range ))1)對于我們在A3:C5中的示例數(shù)據(jù)集,公式采用以下形狀:
逐行掃描范圍:
=INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1)
該公式是Torow函數(shù)的替代方法,其3 rd參數(shù)設(shè)置為false或省略:
=TOROW(A3:C5)
通過列掃描范圍:
=INDEX($A$3:$C$5, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1)
此公式等同于Torow函數(shù),將第3個參數(shù)設(shè)置為true:
=TOROW(A3:C5, ,TRUE)
請注意,與動態(tài)陣列Torow函數(shù)不同,這些傳統(tǒng)公式應(yīng)在您希望出現(xiàn)結(jié)果的每個單元格中輸入。在我們的情況下,第一個公式(按行)轉(zhuǎn)到E3,并通過M3復(fù)制。第二公式(按列)??降落在E8中,并拖入M8。
為了使公式正確復(fù)制,我們使用絕對參考($ 3:$ C $ 5)鎖定范圍。命名范圍也將做到。
如果您將公式復(fù)制到超出所需的單元格,請使用#REF!錯誤將出現(xiàn)在“額外”單元格中。要解決此問題,請將您的公式包裝在這樣的IfError函數(shù)中:
=IFERROR(INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1), "")
這些公式如何工作
以下是第一個公式的詳細分解,該公式按行安排值:
=INDEX($A$3:$C$5, QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1, MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1)
在公式的核心上,我們使用索引函數(shù)根據(jù)單元在該范圍內(nèi)的相對位置獲取值的值。
行號由此公式計算:
QUOTIENT(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1
這個想法是產(chǎn)生重復(fù)的數(shù)字序列,例如1,1,1,2,2,2,3,3,3,…每個數(shù)字重復(fù)的次數(shù)與源范圍內(nèi)的列一樣多次。這就是我們這樣做的方式:
商返回一個部門的整數(shù)部分。
對于分子,我們使用列(A1)-1,該列在第一個單元格中從0中返回序列號,其中公式將輸入到n (范圍為負1中的值總數(shù))中的最后一個單元格中的序列號(范圍為負1的總數(shù))。在此示例中,我們在E2中有0和M3中的0。
對于分母,我們使用列($ a $ 3:$ c $ 5))。這將返回一個等于您范圍內(nèi)的列數(shù)(在我們的情況下為3)的恒定數(shù)。
結(jié)果,商函數(shù)在前3個單元格中返回0(E3:G3),我們添加1個,因此行號為1。
對于接下來的3個單元格(H3:J3),商返回1,1給出了第2行,依此類推。
要計算列號,您可以使用MOD函數(shù)構(gòu)建適當?shù)臄?shù)字序列:
MOD(COLUMN(A1)-1, COLUMNS($A$3:$C$5)) 1
由于我們的范圍內(nèi)有3列,因此序列必須看起來像:1,2,3,1,2,3,…
MOD函數(shù)在除法后返回其余部分。
在E3中,Mod(列(A1)-1,列($ A $ 3:$ C $ 5))1
變成
mod(1-1,3)1)
并返回1。
在F3中
變成
mod(2-1,3)1)
并返回2。
建立行和列號后,索引很容易在該行和列的相交處獲取值。
在E3中,索引($ A $ 3:$ c $ 5,1,1)返回從1 st Row和引用范圍的1列的值,即來自單元A3的1列。
在F3中,索引($ A $ 3:$ c $ 5,1,2)從1 st Rong和2 nd列中返回一個值,即來自Cell B3的值。
等等。
第二個按列掃描范圍的公式以類似的方式工作。不同之處在于,我們使用mod來計算行號和商來找出列號。
Torow功能不起作用
如果Torow函數(shù)導(dǎo)致錯誤,則最有可能是以下原因之一:
#姓名?錯誤
使用大多數(shù)Excel功能,一個#NAME?錯誤清楚地表明該函數(shù)的名稱拼寫錯誤。使用Torow,這也可能意味著該功能在您的Excel中不可用。如果您的Excel版本在365以外,請嘗試使用Torow替代品。
#NUM錯誤
#num!錯誤表明返回的數(shù)組不能適合行。當您引用整列和/或行而不是較小的范圍時,通常會發(fā)生這種情況。
#spill錯誤
在大多數(shù)情況下,#spill錯誤表明您輸入該公式的行沒有足夠的空白細胞將結(jié)果溢出。如果相鄰的單元格在視覺上是空的,請確保其中沒有空格或其他非打印字符。有關(guān)更多信息,請查看#spill錯誤在Excel中的含義。
這就是您在Excel中使用Torow函數(shù)將二維數(shù)組或范圍轉(zhuǎn)換為單行的方式。我感謝您閱讀,并希望下周在我們的博客上見到您!
練習(xí)工作簿下載
Excel Torow函數(shù) - 公式示例(.xlsx文件)
以上是Excel Torow函數(shù)將范圍或數(shù)組轉(zhuǎn)換為行的詳細內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機

Video Face Swap
使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)