close

2666

如何將資料轉置

周雅芳:「請問錦子老師,我有一個表格想由現時的效果變成理想的效果,不懂Excel有沒有功能可以做到。」

image

錦子老師:「其實這並不是那麼難,作法是:

點取E3儲存格輸入公式:

=IFERROR(OFFSET($A$1,SUMPRODUCT(SMALL(($B$2:$C$5=E$2)*ROW($B$2:$C$5),COUNT($B$2:$C$5)-COUNTIF($B$2:$C$5,E$2)+ROW()-2))-1,,,),"")

再將公式複製到E3:I5儲存格。

image

【公式說明】

首先我們要設定條件公式,由於是要抓取數字對應的英文項目,故輸入($B$2:$C$5=E$2)抓取對應第二列數字的資料,再傳回所在列ROW($B$2:$C$5)

由於是用Small函數,會將不符合的資料當0,故要先統計資料個數COUNT($B$2:$C$5),再統指定範圍中符合的個數COUNTIF($B$2:$C$5,E$2),二者相減後,再加上目前的列數減2 ROW()-2傳回其位在第幾列。

 

透過SUMPRODUCT函數傳回詃數值SUMPRODUCT(SMALL(($B$2:$C$5=E$2)*ROW ($B$2:$C$5),COUNT($B$2:$C$5)-COUNTIF($B$2:$C$5,E$2)+ROW()-2))

然後透過OFFSET函數,指定從A1儲存格向下移動傳回的列數減1的儲存格內容OFFSET ($A$1,SUMPRODUCT(SMALL(($B$2:$C$5=E$2)*ROW($B$2:$C$5),COUNT($B$2:$C$5)-COUNTIF ($B$2:$C$5,E$2)+ROW()-2))-1,,,)

如果沒有資料可傳回時會出現錯誤訊息,故利用IFERROR函數使其不填入資料=IFERROR (OFFSET($A$1,SUMPRODUCT(SMALL(($B$2:$C$5=E$2)*ROW($B$2:$C$5),COUNT($B$2:$C$5)-COUNTIF($B$2:$C$5,E$2)+ROW()-2))-1,,,),"")

以上就是今天主要學習的知識點,希望對大家有所幫助~~有什麼問題歡迎留言,我會儘量及時的給大家答覆~~

部落格相關範例

2021.11.03

2650讓自動校正輸入統一的文字

2021.11.02

2649Excel中自訂梯形面積函數

2021.11.01

2648把資料徹底隱藏起來

2021.10.31

2644關於歐元的轉換

2021.10.30

2643Excel中攝影功能的妙用

2021.10.29

2642計算儲存格中的總字數

2021.10.28

2640建立文字型長條圖

2021.10.27

2641用特殊符號補齊字元數

2021.10.26

2630使用Excel數組公式自製日曆

2021.10.25

2639Excel找出計算結果的位置

2021.10.24

2638如果要將一個數值除指定的數,並能自動分配在不同格子上要怎麼做...

2021.10.23

2632欄位字串替換

2021.10.22

2629Excel查表對照值

2021.10.21

2628VBA 將字串改為函數

2021.10.20

2627相對位址

2021.10.19

2626絕對與相對的儲存格位址

2021.10.18

2624Excel秘密功能-顯示儲存格公式

2021.10.17

2623Excel秘密功能-固定小數位數

 

image


arrow
arrow
    創作者介紹

    錦子老師 發表在 痞客邦 留言(0) 人氣()