在非标准 table 中使用索引匹配
Using Index Match within a non-standard table
我有一个日常绩效管理器,负责 Google 广告等。我每天或每隔几天将基本指标数据复制到 table 中,然后我可以看到性能和预算随时间的变化。
看起来像这样:
date Clicks Impression CTR Cost Conversions CPA CPC CVR
01/03/2019 23 150 15% 2 [=11=].67 8.7%
02/03/2019 23 150 15% 2 [=11=].67 8.7%
03/03/2019 23 150 15% 2 [=11=].67 8.7%
04/03/2019 23 150 15% 2 [=11=].67 8.7%
05/03/2019 23 150 15% 2 [=11=].67 8.7%
06/03/2019 23 150 15% 2 [=11=].67 8.7%
07/03/2019 23 150 15% 2 [=11=].67 8.7%
08/03/2019 23 150 15% 2 [=11=].67 8.7%
09/03/2019 23 150 15% 2 [=11=].67 8.7%
以此类推,直到月底。每个月重复一次。在每个月部分的末尾,它都有月份的名称和每个月的总数。
我管理着很多客户,我制作了一本 Excel 工作簿,让我可以为每个客户用 sheet 来完成这一切。我的问题是我想要一个仪表板,其中包含每个客户一个月内的表现快照,以便我自己更轻松。
我的第一次尝试是使用 INDEX MATCH,但是,您需要 table 才能工作。所以我尝试使用命名 运行ges 来创建 table。我创建了一个 Client1StatsTable ,其中我只选择了带有月份总数的行和一个 Client1MonthName 运行ge ,其中有月份名称。
这意味着我认为我可以 运行 在 INDEX MATCH 中 运行ge,就像它是真实的 table 一样。我写了以下 2 个公式:
INDEX(Client1StatsTable, MATCH(TEXT(DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())),"mmmm"),Client1MonthName,0), 3)
INDEX(Client1StatsTable,MATCH(K12,Client1MonthName,0),3)
我会为每个客户重复此操作,以获得跨不同指标的性能的月度快照。
但是,我遇到了 #N/A 错误。当我 运行 通过 Excel 中的 Evaluate Formula 函数时,我发现即使 运行ge 被正确解析为多个行和单元格断开连接,当它试图将 Month 放入 MATCH 时卡住了。
它正确解析了月份,但在 运行ge 中找不到它。
结尾 table 应该将每个客户端都集中在一个 table 中,看起来像:
Date ClientName CTR CPC CPA CVR Spend Amount of Budget Used
04/03/2019 Client 1 5% [=13=].86 2% 15%
我希望在不使用 VBA 的情况下完成此操作。
您可以使用 sumproduct-filters
和 booleans
重新创建 pivot table
=Sumproduct(--(condition_1);--(condition_2); Sum_of_range)
这是你的例子:
客户 A 在 2019 年 4 月 3 日的点击率
= Sumproduct(--(Client_range='A');--(Date_range='4/3/19'); Sum_of_CTR)
对仪表板的其余字段执行相同操作
最后我找到了答案,感谢@hsan,我最初认为各个月份名称之间的值会妨碍 INDEX MATCH.我回顾了测试它的原始代码,并将 MATCH 中的最终值设置为 -1。
所以它是:
INDEX(ClientName1!$A:$K0,MATCH(TEXT(DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())),"mmmm"),ClientName1!$A:$A0,-1),3)
但当我这样做时
INDEX(ClientName1!$A:$K0,MATCH(TEXT(DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())),"mmmm"),ClientName1!$A:$A0,0),3)
有效
我有一个日常绩效管理器,负责 Google 广告等。我每天或每隔几天将基本指标数据复制到 table 中,然后我可以看到性能和预算随时间的变化。
看起来像这样:
date Clicks Impression CTR Cost Conversions CPA CPC CVR
01/03/2019 23 150 15% 2 [=11=].67 8.7%
02/03/2019 23 150 15% 2 [=11=].67 8.7%
03/03/2019 23 150 15% 2 [=11=].67 8.7%
04/03/2019 23 150 15% 2 [=11=].67 8.7%
05/03/2019 23 150 15% 2 [=11=].67 8.7%
06/03/2019 23 150 15% 2 [=11=].67 8.7%
07/03/2019 23 150 15% 2 [=11=].67 8.7%
08/03/2019 23 150 15% 2 [=11=].67 8.7%
09/03/2019 23 150 15% 2 [=11=].67 8.7%
以此类推,直到月底。每个月重复一次。在每个月部分的末尾,它都有月份的名称和每个月的总数。
我管理着很多客户,我制作了一本 Excel 工作簿,让我可以为每个客户用 sheet 来完成这一切。我的问题是我想要一个仪表板,其中包含每个客户一个月内的表现快照,以便我自己更轻松。
我的第一次尝试是使用 INDEX MATCH,但是,您需要 table 才能工作。所以我尝试使用命名 运行ges 来创建 table。我创建了一个 Client1StatsTable ,其中我只选择了带有月份总数的行和一个 Client1MonthName 运行ge ,其中有月份名称。
这意味着我认为我可以 运行 在 INDEX MATCH 中 运行ge,就像它是真实的 table 一样。我写了以下 2 个公式:
INDEX(Client1StatsTable, MATCH(TEXT(DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())),"mmmm"),Client1MonthName,0), 3)
INDEX(Client1StatsTable,MATCH(K12,Client1MonthName,0),3)
我会为每个客户重复此操作,以获得跨不同指标的性能的月度快照。
但是,我遇到了 #N/A 错误。当我 运行 通过 Excel 中的 Evaluate Formula 函数时,我发现即使 运行ge 被正确解析为多个行和单元格断开连接,当它试图将 Month 放入 MATCH 时卡住了。
它正确解析了月份,但在 运行ge 中找不到它。
结尾 table 应该将每个客户端都集中在一个 table 中,看起来像:
Date ClientName CTR CPC CPA CVR Spend Amount of Budget Used
04/03/2019 Client 1 5% [=13=].86 2% 15%
我希望在不使用 VBA 的情况下完成此操作。
您可以使用 sumproduct-filters
和 booleans
pivot table
=Sumproduct(--(condition_1);--(condition_2); Sum_of_range)
这是你的例子:
客户 A 在 2019 年 4 月 3 日的点击率
= Sumproduct(--(Client_range='A');--(Date_range='4/3/19'); Sum_of_CTR)
对仪表板的其余字段执行相同操作
最后我找到了答案,感谢@hsan,我最初认为各个月份名称之间的值会妨碍 INDEX MATCH.我回顾了测试它的原始代码,并将 MATCH 中的最终值设置为 -1。 所以它是:
INDEX(ClientName1!$A:$K0,MATCH(TEXT(DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())),"mmmm"),ClientName1!$A:$A0,-1),3)
但当我这样做时
INDEX(ClientName1!$A:$K0,MATCH(TEXT(DATE(YEAR(TODAY()),MONTH(TODAY()),DAY(TODAY())),"mmmm"),ClientName1!$A:$A0,0),3)
有效