EXCEL VLOOKUP抓最新項目

各位前輩們好
小弟最近在製作管理用的EXCEL tool,目前單純使用VLOOKUP來將List資料置換到總表的部分已經完成
不過苦於不知道該如何修該來讓EXCEL自動抓取List裡的最新的項目顯示於總表當中

因為公司大家電腦使用的語系都不太相同(有日文 英文 中文)所以原則上不使用VBA來寫(雖然我還是不懂VBA寫法就是...)不然語系不同會有問題

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

EXCEL VLOOKUP抓最新項目
EXCEL VLOOKUP抓最新項目
2020-04-30 16:44 發佈
點取總表B2儲存格輸入公式(預估LIST有99筆):
=IFERROR(OFFSET(LIST!B$1,SUMPRODUCT(LARGE((LIST!$A$2:$A$100=總表!$A2)*(ROW($B$2:$B$100)),1))-1,,,),"")
再將公式複製到B2:J20儲存格範圍。
錦色如月,子耀光芒。
錦子 wrote:
點取總表B2儲存格輸(恕刪)


非常感謝回復解惑,不好意思可以說明一下公式裡所使用的函數嗎?
雖然照著做完成了,不過並不是很理解這組公式裡的函數組合
H.hao wrote:
最新項目

先抓取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,,,),"")。
錦色如月,子耀光芒。
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?