【发布时间】:2023-03-08 18:41:01
【问题描述】:
在我的“Pieces”工作表和表格上,我有一堆 ID,如下所示:
Level ID Tenant Type Level SQM Tenant
1358001 Retail 1000 VACANT
1358002 Retail 1000 Schoc
1358003 Retail 1000 VACANT
1358004 Retail 1000 Wishbone
1358005 Retail 1000 Zebrano Ltd
1358006 Retail 1000 Cranfields
1358007 Retail 1000 Astoria
1358008 Retail 1000 Mall Drycleaners
1358009 Unaccounted Area 1000 Unaccounted Area
然后我得到了一个“前”表,其中对数据进行了排序等。 我希望能够在首页上列出单个级别的多个租户。在上面的示例中,所有租户都在同一级别:“00”。
然后,在“正面”工作表上,我使用=CONCATENATE(F5,B15):F5= 1358:B15= 00 调出我在单元格 I30 中查看的级别 ID。
单元格 I32 包含:
=COUNTIF(pieces[Level ID],(CONCATENATE(I30,"?"))) 返回9。
在此下方,我想制作一个包含 00 级所有租户的“动态”列表。我不完全确定如何执行此操作(而且我可能会朝着错误的方向前进),但我相信我有部分内容我就是不知道怎么拼起来的谜题。
我可以通过以下论坛退回一位租户:
=VLOOKUP(CONCATENATE(I30,"1"), pieces[[#All], [Level ID]:[Tenant]], 4, FALSE)
正确返回第一个租户(“VACANT”)。
然后我想我可以通过以下方式拉下一个“列表”(就在下面的单元格中):
=OFFSET(VLOOKUP(CONCATENATE(I30,"1"),pieces[[#All],[Level ID]:[Tenant]],4,FALSE),0,0,I32)
这将使用我的COUNTIF 语句将高度设为 9。但是,这个公式不起作用,即使在查找之后我也无法正确处理
【问题讨论】:
-
所以您的关卡 ID 是伪装成真实数字的文本...?如果没有,带有 CONCATENATE 的 VLOOKUP 是如何工作的?
-
@Jeeped 基本上是的,它们必须在文本下,所以我可以将级别用作 00 等。而不仅仅是 0。
-
我不知道这是否可以用普通公式完成。你对 VBA 很熟悉吗?
-
@JamesFaix 我用过一点 VBA,但我还是很陌生
标签: excel vba offset vlookup countif