有时需要在Excel工作表中限制用户输入其他工作表中已存在的数据,例如Sheet2表的A1:A50有一列名单,要求在Sheet1工作表中的E3:E30区域所输入的内容不包含这列名单。这时可用数据有效性来实现,方法如下:
1.定义名称。
选择Sheet2表的A1:A50区域,在左上角的名称框中输入一个名称,如“mc”,然后按回车键。
2.设置数据有效性。
选择Sheet1表的E3:E30区域,选择时从上向下选择,让E3单元格选择后处于高亮。在Excel 2003中单击菜单“数据→有效性→设置”;在Excel 2007中依次选择“数据”选项卡,在“数据工具”组中单击“数据有效性→数据有效性→设置”。然后单击“允许”下方的下拉列表,选择“自定义”,在下方的文本框中输入公式:
=COUNTIF(mc,E3)=0
单击“确定”。这样设置后,在Sheet1表的E3:E30 区域输入Sheet2表A列的名单时,Excel会弹出错误提示。
需要注意的是,Sheet2表A1:A50区域中不能包含空单元格,即名称“mc”所指定的区域中不能包含空单元格,否则该限制会失效。
另外,由于在Excel 2010的数据有效性的“自定义”设置中可直接引用其他工作表中的数据,因而在Excel 2010中可将公式改为:
=COUNTIF(Sheet2!$A$1:$A$50,E3)=0
这种方法不受空单元格的限制,如果Sheet2的A列没有其他数据,上述公式还可引用整个A列:
=COUNTIF(Sheet2!A:A,E3)=0
,数据有效性限制用户输入tag: Excel教程,Excel学习,excel视频教程,电脑培训学习 - 办公软件学习 - Excel教程