Excel三个下拉互斥

描述:Excel有三个下拉列表,若选择了其中任意一个下拉,其他两个均不可以在选择。

尝试了很多种办法,级联,数据有效性等等,最后都没实现。

老大,最后用VBA实现。

附上代码:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Long
Dim n As Integer
n = 1
If Target.Column = 2 And Target.Value <> "" Then
r = Target.Row
If Range("G" & r).Value <> "" Then
MsgBox (" G 列已有内容")
Target = ""
Exit Sub
ElseIf Range("I" & r).Value <> "" Then
Target = ""
MsgBox (" I 列已有内容")
Exit Sub
End If
End If If Target.Column = 7 And Target.Value <> "" Then
r = Target.Row
If Range("B" & r).Value <> "" Then
Target = ""
MsgBox (" B 列已有内容")
Exit Sub
ElseIf Range("I" & r).Value <> "" Then
Target = ""
MsgBox (" I 列已有内容")
Exit Sub
End If
End If If Target.Column = 9 And Target.Value <> "" Then
r = Target.Row
If Range("G" & r).Value <> "" Then
Target = ""
MsgBox (" G 列已有内容")
Exit Sub
ElseIf Range("B" & r).Value <> "" Then
Target = ""
MsgBox (" B 列已有内容")
Exit Sub
End If
End If End Sub

Excel三个下拉互斥的更多相关文章

  1. EXCEL 如何实现下拉填充公式,保持公式部分内容不变,使用绝对引用

    EXCEL 如何实现下拉填充公式,保持公式部分内容不变,使用绝对引用 在不想变的单元格前加$符号(列标和列数,两个都要加$),变成绝对引用,默认情况是相对引用 L4固定不变的方式:$L$4 M4固定不 ...

  2. EXCEL设置三级下拉框

    EXCEL设置三级下拉框 1.添加下拉框数据源 公式--->指定 公式--->名称管理器 2.设置第一级下拉框的值 3.第一级下拉框选出一个值 4.设置第二级下拉框(INDIRECT($A ...

  3. POI设置excel添加列下拉框

    POI在生成excel模板时需要为列添加下拉框,我写了两个方法. @ 方法一:适用任何情况,不受下拉框值数量限制.但是需要通过引用其它列值. 思路大概如下: 1.创建一个隐藏的sheet页,用于存放下 ...

  4. 指令汇B新闻客户端开发(三) 下拉刷新

    现在我们继续这个新闻客户端的开发,今天分享的是下拉刷新的实现,我们都知道下拉刷新是一个应用很常见也很实用的功能.我这个应用是通过拉ListView来实现刷新的,先看一张刷新的原理图 从图中可知,手指移 ...

  5. Excel中添加下拉框

    数据->数据验证->数据验证 设置—>允许下拉框中选择序列,来源中写下拉选项,每个选项之间用逗号隔开

  6. Ionic Js三:下拉刷新

    在加载新数据的时候,我们需要实现下拉刷新效果,代码如下: HTML 代码 <body ng-app="starter" ng-controller="actions ...

  7. 通过创建元素从而实现三个下拉框的联动效果(create.Element("option"))和提交表单时的验证p.match("请选择")

    <html> <head> <meta charset="utf-8"> <title>下拉框</title> < ...

  8. excel中添加下拉候选

    这里简单记录下如何在Excel2013中添加下拉候选. 首先有个思路是,下拉候选也就意味着数据被限制在一个范围之内,因此应该联想到数据验证相关的设置. 选中单列或单元格,在[数据]下的[数据验证]中选 ...

  9. C#动态给EXCEL列添加下拉选项

    Microsoft.Office.Interop.Excel.Application excel=new Microsoft.Office.Interop.Excel.Application(); M ...

随机推荐

  1. JavaDailyReports10_06

    今日收获: 一.所有引用类型变量的初始化一定要使用new 关键字定义声明,空指针异常的错误原因可能是变量没有初始化导致的. 每一个类体的数据成员一定要在实例化的同时赋值,用一个实例化的类实现问题中最小 ...

  2. 数据仓库组件:Hive环境搭建和基础用法

    本文源码:GitHub || GitEE 一.Hive基础简介 1.基础描述 Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取.转化.加载,是一个可以对Hadoop中的大规模存储的数据进 ...

  3. vue-cli Cannot find module 'less'

    首先,今天下午对OneloT项目进行试图修改,我向在在线的时候先将接口中的数据缓存到本地,通过文件写入的方式,但是没有成功,捣鼓了一会.重新启动浏览器,发现命令行报错,error cannot fin ...

  4. 一键配置网卡IP(win10)脚本

    前两天有个小伙伴问我,如何快速配置IP,在公司在家里在宿舍,快速配置IP,然后我特别为这个小伙伴写了一个脚本. @echo off mode con: cols=60 lines=25 title 网 ...

  5. Java 8 之前的时间处理

    最近在自己瞎折腾,有一个需求是计算当前日期到指定日期有多少天,用于实现纪念日或倒计时的功能.查阅资料后发现Java 8之前的时间日期处理很是麻烦而且被频频吐槽,以至于后来在 Java 8 中推出了一个 ...

  6. oracle坚决不挂01(表,索引,视图的创建,修改,删除,查询)

    考试快来了,来篇oracle干货,复习一下(挣扎一下) 废话不多说,开始写! 这篇是数据库对象的有关操作的总结! 数据库对象有熟悉的表,视图,索引,序列,同义词等(这个oracle东西真不少,小声bb ...

  7. python模块详解 | filecmp

    简介: filecmp是python内置的一个模块,用于比较文件及文件夹的内容,它是一个轻量级的工具,使用非常简单 两个主要的方法: filecmp.cmp(f1, f2[, shallow]) 比较 ...

  8. (十八)configparser模块

    configparser模块一般是用来处理配置文件的,如: [DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel ...

  9. bash shell关联数组总结

    [原创]本博文为原创博文,引用或转发请注明原始出处和链接:https://www.cnblogs.com/dingbj/p/dict_array.html 什么是关联数组? 关联数组相对于索引数组,又 ...

  10. oracle可传输表空间测试

    使用RMAN在恢复表空间的时候,表空间数据文件DBID和恢复数据库的数据文件DBID必须相同 可传输表空间不需要这样,也就是可以快速的把这个表空间插入另一个数据库使用 可传输表空间内的对象必须不依赖与 ...