【问题标题】:CheckBox to limit a data validation listCheckBox 限制数据验证列表
【发布时间】:2018-06-19 20:05:22
【问题描述】:

慢慢前行……

我添加了一个列,结合我的复选框,给出了在职员工的姓名。

有效员工名单的屏幕截图

如果我使用 $T$6:$T$16 作为我的验证列表,我仍然会在下拉列表中看到 11 个选项。我希望下拉菜单仅显示该列表中的 5 个名称。

【问题讨论】:

  • 建议对您的建议设置进行更改。不要使用复选框,而是创建一个“活动”列,并根据需要在每个单元格中放置 TRUE 或 FALSE。这将更容易维护和参考。
  • 显示您的复选框代码以填充 T 列
  • =IF(Tbl_Emplys[IS ACTIVE],VLOOKUP(Tbl_Emplys[ID],Tbl_Emplys,2,FALSE),)
  • ^^^这是填充列 T 的内容

标签: vba excel validation checkbox


【解决方案1】:

这里不需要使用VBA,这里有一个快速的解决方案。

在员工姓名旁边的列中使用 1 或 0,对应他们是否在职。

然后在销售表中创建一列,其中包含该值的 vlookup

=VLOOKUP(E4,$A$4:$B$8,2,FALSE)

这会在所有名称的范围内查找值 E4(名称),第二列表示它们的活动状态,FALSE 表示完全匹配。

然后使用过滤器:

  • 突出销售范围
  • “数据”选项卡
  • “过滤器”

然后您可以使用新的活跃列上的过滤器来仅显示仍然活跃的员工。有关最终结果,请参阅链接图像。 vlookup 位于 D 列中。

Excel 中的最终结果图片

当然,如果您想在两张纸上进行此操作,您可以将我所做的事情拆分到不同的纸上,而无需额外的努力,只需在 vlookup 中添加对范围的图纸引用。

希望对你有帮助

【讨论】:

  • 感谢您对我的问题的补充。但是我没有看到这将如何限制我的 drop dwon 数据验证列表中的选择。
  • 因为如果您有额外的列(用于查找员工是否处于活动状态),那么您可以只过滤那些......这不是您要找的吗?您可以先按此过滤,然后进行任何其他验证...
  • 再次感谢您的回复。我确实通过添加一些我正在寻找的屏幕截图来更新我的问题,如果这有助于澄清我的要求。
  • =IF(Tbl_Emplys[IS ACTIVE],VLOOKUP(Tbl_Emplys[ID],Tbl_Emplys,2,FALSE),),这仍然让我在下拉数据验证列表中有 9 个选项。我需要它只为活跃的人提供选项
猜你喜欢
  • 2012-05-26
  • 1970-01-01
  • 2011-03-02
  • 1970-01-01
  • 1970-01-01
  • 2014-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多