在Excel中,我们可以使用“数据有效性”功能来创建下拉列表,供用户从中选择。例如,如下图所示:
①选择主数据工作表中的B列。 ②调出“数据有效性”对话框,选择“允许”下拉列表框中的“序列”。 ③在“来源”中输入要提供用户选择的文本,例如:请假,出差,年休。 ④单击“确定”后,在主数据工作表的B列中任一单元格单击,出现带有数据的可供选择的列表,如下图。 
当然,也可以将需要提供的数据放置在工作表中的某单元格区域内,然后在“来源”中输入该单元格区域地址。 上述方法对于固定的或者说事先知道在列表中提供的数据时,非常合适。然而,如果下拉列表中的数据需要不断增加,或者需要调整,仍然按照上述方法的话,则需要重复上述步骤。 下面提供一种方法,能够动态改变列表中的数据,而无需每次调出“数据有效性”对话框。先看看下图:
①在基础数据工作表中,在列A单元格中依次输入想要显示在下拉列表中的数据,如“请假”、“出差”、“换休”。 注:将这些数据输入在单独的工作表中,能够避免在主工作表中操作时无意中修改这些数据。 ②调出“新建名称”对话框,在“名称”中输入“List”。 ③在“范围”列表中选择“工作簿”。 ④在“备注”中输入一些说明文字。 ⑤在“引用位置”输入公式“=OFFSET(基础数据!$A$1,0,0,COUNTA(基础数据!$A:$A),1)”。 现在,回到主数据工作表,如下图所示。 
①选择列C。 ②调出“数据有效性”对话框,选择“允许”下拉框中的“序列”。 ③在“来源”中输入公式“=List”,即与前面定义的名称连接。 此时,单击列C中的任一单元格,将出现下拉列表框,包括在基础数据工作表中列A的数据,如下图所示。
现在,您在基础数据表中添加数据,如加班,此时在主数据工作表的列C中单元格的下拉列表中会自动出现添加的“加班”项,如下图所示。
|