close

2693

Excel利用VLOOKUP函數抓取最新項目

陳依萍:「錦子老師,小弟最近在製作管理用的Excel TOOL,目前使用VLOOKUP函數來將List工作表資料置換到總表的部分已經完成,不過苦於不知道該如何修改來讓Excel自動抓取List工作表裡的最新項目顯示於總表工作表當中,因為公司大家電腦使用的語系都不太相同(有日文、英文、中文)所以原則上不使用VBA來寫(雖然我還是不懂VBA寫法就是...)不然語系不同會有問題。

第一張是總表工作表

image

第二張是list工作表

image

目前寫的函數內容是:=IF(ISERROR(VLOOKUP([@番号],表格1[#全部],2,0)),"",VLOOKUP ([@番号],表格1[#全部],2,0))

錦子老師:「首先點取總表工作表B2儲存格輸入公式:

=IFERROR(OFFSET(LIST!B$1,SUMPRODUCT(LARGE((LIST!$A$2:$A$100=總表!$A2)*(ROW($B$2:$B$100)),1))-1,,,),"")

將公式複製到B2:J20儲存格。

image

【公式解說】

先抓取LIST工作表中A欄資料等於總表工作表A欄資料的儲存格(LIST!$A$2:$A$100=總表!$A2)*(ROW($B$2:$B$100)

再抓取符合條件的儲存格列號最大的那一個,LARGE((LIST!$A$2: $A$100=總表!$A2)*(ROW($B$2:$B$100)),1),那是因為要抓取最新的。

最後由於是要傳回LIST工作表由B欄開始一直抓到J欄的內容,故使用OFFSET函數從B1儲存格開始向下移動前面傳回的列號代表的列數減1 OFFSET(LIST!B$1,SUMPRODUCT(LARGE ((LIST!$A$2:$A$100=總表!$A2)*(ROW($B$2:$B$100)),1))-1,,,)

如果LIST工作表沒有總表工作表A欄中的資料,則要將該項目B欄到J欄儲存格不填入資料IFERROR(OFFSET(LIST!B$1,SUMPRODUCT(LARGE((LIST!$A$2:$A$100=總表!$A2)*(ROW ($B$2:$B$100)),1))-1,,,),"")

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

image

部落格相關範例

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秘密功能-固定小數位數

 


arrow
arrow

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