新增另一個查找值時如何動態更新 vlookup 表?

新增另一個查找值時如何動態更新 vlookup 表?

我有一個簡單的(格式為)表格(表 1),根據評級進行排名。

Rank Name Rating
1 etc etc etc 
4 etc etc etc 
3 etc etc etc 
2 etc etc etc 

我有一個 VLOOKUP(格式為)表(表 2),用於查看排序的排名。

現在,當我在表 1 中新增另一個值時,我需要進入表 2 並新增 vlookup 查找的數字以擴展該表。

有沒有辦法讓這部分自動化?

因此,當我向表 1 新增一行時,表 2 會自動更新。

答案1

FILTER()是你需要的東西:

=FILTER(Table1,Table1[Column1]<>"")

Table1追蹤其組件,因此添加值會將這些值添加到它追蹤的內容中。FILTER(),然後返回其所有組件,包括剛剛添加的組件。

對於排序方面,您可以只使用SORT()該結果。

只有一個問題...

FILTER()在表中將無法如預期運作。它可以很高興地在桌子上從外面工作,但不能在桌子上工作。

由於您的輸出也在表中,因此您不能在其中使用它。所以......要么它不能在表中,要么你必須避開像FILTER()(and SORT(),這也在這裡指出的)這樣的數組公式。

那麼,為什麼它必須在正式的表格中呢?似乎表的大多數要點都不需要填充它,因為您將其填充描述為來自您在此處尋求的方法,而不是來自物理資料輸入(物理資料輸入在表 1 中完成)。其餘的要點將在其他地方的公式中使用“結構化引用”,以表 2 為輸入。

這些不僅被高估了,而且相當冗長,而且在任何方面都沒有必要,因為人們可以簡單地以一種方式為類似的用途命名列。因此,我們必須決定哪一個更重要:在 Table2 中對資料進行簡單的填充和排序以供視覺(?)使用,還是使用引用 Table2 的結構化參考?

我使用過的另一種方法,發現它並不比 Tables 之前的舊方法更令人討厭,它是一個中間“表”,用於FILTER()填充它,並對它進行排序,然後使用舊方法構建公式來填充實際的Table2,這將透過將其自動套用至輔助表範圍來對其應用程式自動排序。因此,您的 Table2 將完全填入、排序,並可使用結構化參考供後續使用。

上述所有困難都表明您的真實情況需要克服,而有些困難在您的字面用法中不會成為問題。

贊成的一點是,有一天 Excel 將解決表格與陣列公式問題。嗯,當然是在 2050 年之前。有一天。當發生這種情況時,您只需將 Table2 的公式替換為SORT(FILTER())輔助表/範圍中的公式即可進行更新,然後刪除輔助表。

或者,正如其他人所提到的,如果您可以使用 VBA(老闆不介意使用它)並且您知道如何使用,VBA 將為您徹底解決它。

相關內容