一个单元格中的两个 vlookup 函数

Two vlookup functions in one cell

我有以下业务案例,想用 excel 将其自动化。在第一个 table 中,我有建筑物、承租人、开始日期、结束日期和租金。在第二个现金流标签中,我想添加每个月和建筑物的租金是多少。

选项卡 1。

Building Renter Startdate Enddate Rent
First David 1.1.2021 31.07.2021 1234
Second Adam 1.1.2020 31.07.2021 3333
Third George 1.1.2020 31.07.2021 4444
First John 1.1.2020 31.12.2020 9999

选项卡 2

Building December 2020 January 2021 February 2021
First 9999 1234 1234
Second 3333 3333 3333
Third 4444 4444 4444

换句话说,首先我需要在第一个选项卡中找到正确的建筑物,然后谁是特定月份的租户并填写租金值。

谢谢

基于开始日期:

=VLOOKUP(A2,'Tab 2'!1:1000,MATCH(C2,'Tab 2'!1:1,0),FALSE)

基于结束日期:

=VLOOKUP(A2,'Tab 2'!1:1000,MATCH(EOMONTH(D2,-1)+1,'Tab 2'!1:1,0),FALSE)

我建议不要使用 VLOOKUP(永远不要使用。INDEX/MATCH 做的事情完全相同,但速度更快,用途更广)。

但在这种情况下,您应该能够使用简单的 MAXIFS 实现您想要的:

=MAXIFS($E:$E,$A:$A,$A9,$C:$C,"<="&B,$D:$D,">"&B)

这样做的是select最高租金(无论如何应该只有一个),建筑物匹配,每月的第一天在开始日期和结束日期之间。