【问题标题】:Excel dynamic named range based on drop down result基于下拉结果的Excel动态命名范围
【发布时间】:2021-06-15 11:17:38
【问题描述】:

我有一张这样的桌子:

Company Department
Coke Coke HR
Coke Coke Sales
Mars Mars HR
Mars Mars Sales

目前,我正在使用动态命名范围公式在单元格下拉列表中生成。公式为:

=OFFSET(References!$A$2,0,0,COUNTA(References!$A:$A)-1)

=OFFSET(References!$B$2,0,0,COUNTA(References!$B:$B)-1)

但理想情况下,如果在第一个单元格中选择了可口可乐,那么第二个单元格应该只在第二个单元格中为可乐提供 HR 和 Sales。我想我可能需要在现有的偏移函数中添加一个 xlookup 函数来实现这一点,但我真的不确定。有人能指出我正确的方向吗?

【问题讨论】:

  • 附言。不想像其他答案那样使用 VBA 或数据透视表。希望在已定义名称中提供仅公式的解决方案
  • INDIRECT 是你的朋友。抱歉,我没有时间输入完整的答案,但如果您对此链接感到满意,我怀疑它会满足您的需求。 excel-easy.com/examples/dependent-drop-down-lists.html

标签: excel excel-formula named-ranges xlookup


【解决方案1】:

功能

但是等等,还有更多!

添加的功能可以很容易地删除:虽然列表在关联元素的上下文中相互依赖,但它们的功能是完全“模块化”和独立的......

Excel 截图

随后的材料应与此屏幕截图中的表格/单元格等相关:

OneDrive 链接到 Excel 电子表格:here

**重新创建的步骤/fns **

  1. 根据上述内容创建第二个查找表
  • 颜色编码表示功能文本的相应单元格,例如G10功能进入G5,H10适用于H5等
  • 建议以与我现阶段完全相同的方式设置电子表格(或者只需下载上面的链接,您的电话)*

可乐/火星初选

=IFERROR(FORMULATEXT(Range_beverage),"")

可口可乐人力资源/销售选项

=TRANSPOSE(FILTER(R6C4:R9C4,R6C3:R9C3=RC[-1]))
  1. 打开名称管理器 - 您将创建以下命名范围:
  • 在执行此操作之前,请转到:Alt+ T + O(文件,选项)、公式和 Alt+R(即选择 R1C!单元格引用,因为这会派上用场,您可以稍后再改回来)*
Name Formula
Range_primary1 =IF(MID(RC[1],1,SEARCH(" ",RC[1])-1)="Coke",R5C7,R6C7)
Range_beverage =R5C7:R6C7
Range_primary =IF(RC[1]<>"",Range_primary_1, Range_beverage)
SubRange_Mars =R6C8:R6C9
SubRange_Coke =R5C8:R5C9
SubRange =IF(R5C[-1]="Mars",SubRange_Mars,SubRange_Coke)
  • 您可以包含更强大的方法,以便稍后将这些单元格作为 req 动态引用。

  • 关于验证列表的注意事项:不能使用引用范围的函数;不能将命名范围与此类函数一起使用(已删除 1 个),但“已删除 2 个”有效(即,引用命名范围引用另一个具有函数的范围)

  1. 插入两个彼此直接相邻的验证列表(上面主电子表格屏幕截图中的黄色阴影单元格),如下所示:

a) Alt + d + L(或者你用鼠标做的) - 删除 Input MessageError Alert 选项,每个屏幕截图如下:

指定验证列表来源

现在还不是我们一直在等待的那一刻......

即来源如下:

左侧列表(即可口可乐/火星):

=Range_primaray

右列表(可口可乐/玛氏的人力资源/销售)

=SubRange

另一个有趣的 Microsoft/Office 小“错误”我需要与 Bill 讨论一下:完成上述最后一步后打开验证列表对话浏览器,然后仔细检查输入错误/警报消息选项是否仍被禁用。我知道他们会恶作剧地恢复(除非它允许您取消选择,即使它只会在验证对话选项卡式菜单窗口的餐厅部分发生更改后才存储您的选择...

无论如何,走好,去壳。 - 希望这对你有用! :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多