分享

【Excel技能】INDIRECT函数设置二级下拉菜单

 四海龙王1 2017-09-30
    在HR工作中,我们在填写员工信息表格时,为了避免出错,有些内容会制作下拉菜单来直接选择,这个比较简单,还有一种情况是两个单元格,第二个单元格的内容由第一个单元格的内容来决定。比如第一个单元格是部门名称,第二个单元格是岗位名称,这两个单元格就存在一个从属关系。

我们就以部门和岗位为例,制作一个二级下拉菜单,先列出公司所有部门和所有岗位,把它作为参数,并对其进行命名。

首先,将所有部门岗位创建对应的名称。

选中部门和岗位所在单元格,点击【公式】,在【定义的名称】中点选【根据所选内容创建】,在弹出的对话框中勾选【首行】,点击【确定】。

【Excel技能】INDIRECT函数设置二级下拉菜单
其次,再将所有的部门创建一个名称——部门。

选中$A$1:$E$1,点【公式】→【定义名称】,在弹出的对话框的名称栏里输入“部门”,然后点【确定】。

【Excel技能】INDIRECT函数设置二级下拉菜单
然后,设置主单元格的下拉菜单。

回到员工信息填写表的页面,选中部门这一列,点击【数据】→【数据有效性】,在弹出的对话框中进行如下设置。

【Excel技能】INDIRECT函数设置二级下拉菜单

接着,设置从属单元格的下拉菜单,也就是所谓的二级下拉菜单。

选中岗位这一列的单元格,点【数据】→【数据有效性】,在弹出的对话框中做如下设定。

【Excel技能】INDIRECT函数设置二级下拉菜单

在这里使用了INDIRECT函数,该函数表达式是:

=INDIRECT(ref_text, [a1])

第二个参数是选则A1样式还是R1C1样式,一般系统默认为A1样式(简单点理解就是行标是数字,列标是字母),所以通常这个参数都不填。

这个函数的意思是抓取第一个参数(ref_text)所引用的内容。以本例来说,=INDIRECT(B2),意味着抓取B2所引用的内容,当B2=人力资源部 时,抓取的就是人力资源部所对应的岗位。

为什么?

因为我们之前在第一步时就已经把HR部门中所有的岗位命名为“人力资源部”,其他部门岗位也一样。

最终我们看到的效果就是B列选择不同的部门,C列下拉菜单中的岗位名称会发生相应的改变。

【Excel技能】INDIRECT函数设置二级下拉菜单





    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多