Carson's Travels - 章鱼漫游记

一些关于旅行的东东 | Adventure travel around the world

Test VBA

方法 1:使用手动定义的默认选项

适用于所有 Excel 版本

实现思路

  1. 在数据源中添加一个固定的“默认选项”列表,然后在 INDIRECT(A1) 结果的基础上,同时包含默认选项

  2. 创建额外的命名区域,包含这些通用选项,然后在二级数据验证中使用 CHOOSE 函数合并两个列表。


步骤

1. 创建默认选项

"DataSheet" 里,假设 E1:E3 存储所有场景都适用的默认选项:

E列(默认选项)
Other
Not Listed
Custom Request

为这个范围创建命名区域

  1. 选中 E1:E3

  2. 公式 选项卡中点击 定义名称

  3. 设置名称为 CommonOptions

  4. 点击 确定


2. 修改数据验证公式

假设你的二级菜单在 B1

  1. 选择 B1,点击 数据 -> 数据验证

  2. 允许 选项中选择 列表

  3. 来源 处输入:

    excel复制编辑=CHOOSE({1,2},INDIRECT(A1),CommonOptions)
  4. 点击确定


原理解析

INDIRECT(A1) → 获取用户选择的一级菜单对应的选项列表。
CommonOptions → 默认通用选项。
CHOOSE({1,2},INDIRECT(A1),CommonOptions) → 将 INDIRECT(A1) 结果和 CommonOptions 进行合并,使二级菜单始终包含默认选项。

💡 示例:如果用户选择 "Network",二级菜单会显示:

javascript复制编辑FirewallProxyVPNOtherNot ListedCustom Request

优势

  • 简单且适用于所有 Excel 版本

  • 不需要 VBA,用户体验流畅。

⚠️ 限制

  • CHOOSE({1,2},...) 方式最多只能合并两个区域,如果你的 Excel 版本较低(2013 以下),可能不支持数组公式 {1,2},可以使用 VBA 解决。


Powered By Z-BlogPHP 1.7.3

2024 Carson's Travels - 章鱼漫游记 - WWW.CARSONX.COM All Rights Reserved.