excel数据有效性不能用(excel数据有效性怎么做)
#数据验证# 在2013版本以前称为#数据有效性#。数据验证主要用于验证数据的输入的准确性,避免输入非法值以及在输入非法值时能给出提示或警告。可以根据实际需要限制输入范围,提供预设值通过下拉列表选择输入……可以说数据验证功能十分强大能很好的协助我们报表设计。
先看下演示效果:
如上图所示为我们常规用法。我们通过 允许-序列 在 “来源” 选定我们限定的数据源单元格区域这样我们的目标单元格就只能按我们的数据源内容进行选择输入了。如下图:
但是如果我们的数据源区域会发生变化呢?比如说我们公司会有新进的员工,比如说我们的学习课程会随着学年越往上越增多那么我们的数据源就会不完整,发生遗漏的问题,这时候我们可以使用数据验证结合函数来解决。这就是我们今天要讲的扩展用法。
我们来看个例子:
如上图所示:不同学年的课程是不一样的。
一年级的课程为
二年级的课程为:
三年级的课程为:
可以看到随着学年的上升课程也增多了。我们在本例中要实现当表格上方的年级选择一年级的时候下面的课程单元格中的数据验证选项应为一年级的课程,当表格上方的年级选择二年级的时候下面的课程单元格中的数据验证选项应为二年级的课程……
如何实现呢?这里我们需要数据验证结合定义名称使用Offset()函数来实现。
先来看下OFFSET()函数的语法:
OFFSET 函数
语法
OFFSET(reference, rows, cols, [height], [width])
OFFSET 函数语法具有下列参数:
Reference 必需。 要作为偏移基准的参照。 引用必须引用单元格或相邻单元格区域。否则, OFFSET 返回 #VALUE! 。Rows 必需。 需要左上角单元格引用的向上或向下行数。 使用 5 作为 rows 参数,可指定引用中的左上角单元格为引用下方的 5 行。 Rows 可为正数(这意味着在起始引用的下方)或负数(这意味着在起始引用的上方)。Cols 必需。 需要结果的左上角单元格引用的从左到右的列数。 使用 5 作为 cols 参数,可指定引用中的左上角单元格为引用右方的 5 列。 Cols 可为正数(这意味着在起始引用的右侧)或负数(这意味着在起始引用的左侧)。高度 可选。 需要返回的引用的行高。 Height 必须为正数。宽度 可选。 需要返回的引用的列宽。 Width 必须为正数。
备注
如果 "行" 和 "cols 偏移" 引用覆盖了工作表的边缘, 则 offset 返回 #REF! 。如果省略 height 或 width,则假设其高度或宽度与 reference 相同。OFFSET 实际上并不移动任何单元格或更改选定区域;它只是返回一个引用。 OFFSET 可以与任何期待引用参数的函数一起使用。 例如,公式 SUM(OFFSET(C2,1,2,3,1)) 可计算 3 行 1 列区域(即单元格 C2 下方的 1 行和右侧的 2 列的 3 行 1 列区域)的总值。
本例:
1.定义名称 : KC ,在引用位置输入=OFFSET(Sheet1!$I$2,1,Sheet1!$T$3,Sheet1!$U$3,1)
这里做下分解:
OFFSET(Sheet1!$I$2,1,Sheet1!$T$3,Sheet1!$U$3,1)
- Sheet1!$I$2:参照单元格(需要绝对引用)
- 1: 表示向下偏移一行,也就是Sheet1!$I$2参照单元格下一格$I$3
- Sheet1!$T$3:向右偏移的的列,由$T$3的值来决定。当哪个年级就偏移到哪一列。
- Sheet1!$U$3:引用的行高,由$U$3的值决定。相应列的课程数。
- 1: 引用的列宽,这里不需要宽度直接输入1。
我们来看下以上解释及与数据源的相应关系图示:
我们来看下效果:
应用数据验证:
这样本例就完成了制作。 数据验证(数据有效性)的扩展用法就介绍到这了,通过本例希望大家对数据验证结合函数的扩展应用有进一步的了解。