當前位置: 妍妍網 > 辦公

一列轉多列,這個公式挺好用

2024-03-02辦公

小夥伴們好啊,今天給大家帶來的是一個用函式實作行列轉換的技巧。

如下圖所示,是一份員工名單:

這個表中的姓名只有一列,卻有40多行。 打印之前,需要將A列姓名轉換為適合打印的5列多行。

接下來咱們就說說用函式公式如何來實作這樣的效果。

D2單元格輸入以下公式,向右向下復制:

=INDIRECT("a"&5*ROW(A1)-4+COLUMN(A1))&""

思路解析:

5*ROW(A1) -4+COLUMN(A1) 」部份,用於得到有規律的序列值,起始計算結果為2。

公式向下復制填充時ROW(A1)依次變為ROW(A2)、ROW(A3)……,計算結果分別為7、12……,即生成步長值為 5 的自然數序列。

公式向右復制填充時COLUMN(A1)依次變為COLUMN(B1)、COLUMN(C1)……,計算結果分別為3、4……即生成 步長值 1 的自然數序列。

這部份的計算結果與字元"a"連線成一個單元格地址「An」,最後用INDIRECT函式返回文本字串所指定的參照,得到相應單元格的內容。

公式最後使用&"",目的是為了遮蔽在參照空白單元格時返回的無意義的0值。

在Excel 2021或者是最新版的WPS表格中,公式就簡單多了:

C2輸入以下公式,按回車即可:

=INDEX(A:A,SEQUENCE(500,5,2))&""

SEQUENCE專門用於生成序列值陣列。 常用語法為:

=SEQUENCE(行數,[列數],[初始值],[步長])

先使用 SEQUENCE函式生成一個500行、5列,並且從2開始的序號,然後用INDEX函式從A列返回對應位置的內容。

你學會了嗎?

圖文制作:祝洪忠