![02d74468e41fe8e33fe5e7569927ebd9.png](https://i-blog.csdnimg.cn/blog_migrate/6c00ae7dee89a1b08133144f2402d192.jpeg)
大家好,今日讲解VBA代码解决方案的第51讲:利用VBA代码,如何限制重复值的录入,为什么要提出这个问题呢?因为在工作表中录入数据时,有时希望能限制重复值的录入,比如在示例的A列单元格只能录入唯一的人员编号,这个不能重复,该怎么办呢?
此时可以利用工作表的Change事件结合工作表的CountIf 函数来判断所录入的人员编号是否重复,本例子中将要用到的知识点如下:
第一 Worksheet_Change 过程:当用户更改工作表中的单元格,或外部链接引起单元格的更改时发生此事件。
第二 ByVal Target As Range:其中Target是必需的,Range可以是多个单元格。byval 的意思是定义的形式参数“ 按值传递”,Target 是形参的名称,可以定义成自己喜欢的名字,包括默认的事件处理过程中,As Range 是这个形参的类型,也就决定了对应的要传递进来的实参的类型,可以是普通变量,比如 As Single ,As Integer, As Double, 也可以是对象变量,As Worksheet,As Range等这里的As Range 规定类型是 单元格区域对象 Range
第三 Application.EnableEvents 的作用是控制事件的触发。当 Application.EnableEvents 设置为 Fals