VBA与数据有效性

如题所述

数据有效性可以使用公式,=IF($A$1=1,$A:$A,IF($A$1=2,$B:$B,IF($A$1=3,$C:$C,$D$D)))
我觉得这样是最简单的。
但是excel2003数据有效性公式有长度限制,按照问者的要求只能实现到a1=3,再多写就不接受了。
温馨提示:内容为网友见解,仅供参考
无其他回答

vba与数据有效性的例子
If Target.Count 2 Then Exit Sub If Target.Column 3 Or Target.Row 3 Then Exit Sub Dim aa, Arr, i Target.Offset(0, -1) = ""Arr = Sheet1.[a1].CurrentRegion For i = 3 To UBound(Arr)If Arr(i, 2) = Target.Value Then aa = aa Arr(i, 1) ","End If Next ...

excel利用VBA生成无重复无空值的数据有效性下拉列表
1.按Alt+F11,打开VBA编辑器。2.在“工程”窗口中双击要包含数据有效性设置的工作表,在右侧代码窗口中输入下列代码:Private Sub Worksheet_SelectionChange(ByVal Target As Range)Dim RowNum, ListRows, ListStartRow, ListColumn As Integer Dim TheList As String Dim Repeated As Boolean If Targe...

Excel 请教如何用VBA设置整列的数据有效性
手机WPS表格中怎么设置数据有效性,数据有效性控制数据长度

vba数据有效性代码不知道为什么实现后没有右边的下拉箭头。。(>_<)求...
我觉得问题有可能出在“Formula1:=”后面的表达式上。不知道“提取不重复值(xxx)”这个表达是否是个自定义函数。虽然我不懂函数,但结合数据有效性的表达规则分析:1. 如果这个表达返回的是字符串型的结果,则该结果不应为空,而且其结果返回格式应类似于 .Add Type:=xlValidateList, AlertStyle:=x...

Excel VBA 跨表 批量设置数据有效性,悬赏100,如各位马上帮忙解决OK,加...
看了你的问题,不知道你的想法是采用函数还是VBA解决,我认为用函数将能解决这个问题了。方法如下:(按数据来源在“数据有效性引用”表,输入是在“数据源”表写公式)1.点插入——名称——定义,输入名称“数据”,在引用位置输入公式=OFFSET(数据有效性引用!E$1,0,0,MAX((数据有效性引用!E$1:...

VBA 数据有效性的问题
如果是用recordset保存sql查询结果,先要做一些处理将结果赋给一个字符变量,比如:for i=0 to rs.recordcount validStr=iif(validStr="", rs(0), validStr & "," & rs(0))next 然后再赋给数据有效性 Range("A1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, ...

VBA与数据有效性
数据有效性可以使用公式,=IF($A$1=1,$A:$A,IF($A$1=2,$B:$B,IF($A$1=3,$C:$C,$D$D)))我觉得这样是最简单的。但是excel2003数据有效性公式有长度限制,按照问者的要求只能实现到a1=3,再多写就不接受了。

excel vba 数据有效性问题
Private Sub CommandButton1_Click()Range("a1").Activate With Range("A1:A10").Validation .Delete .Add Type:=xlValidateList, _AlertStyle:=xlValidAlertStop, _Operator:=xlBetween, _Formula1:="1,2,3,4"End With CommandButton1.Activate End Sub '参考帮助:《在工作表上使用 ActiveX ...

VBA编程怎么设定并得到Excel数据菜单下:有效性-gt;设置,然后点允许序 ...
按你的要求录制一个宏(注意选择适当位置停止录制),然后打开VB编辑器就可以查看该宏的代码了。打开方法如下:点"工具"-"宏"-"宏",找到你录制的宏名,点"编辑"即可进入VB编辑器。

EXCEL VBA 数据有效性代码问题
在VBA工程浏览器里双击你要控制的工作表,如Sheet1,添加Worksheet的change事件,就是当工作表里文本发生改变时触发该事件,参数是发生改变的区域。代码如下:Private Sub Worksheet_Change(ByVal Target As Range)If Target.Text = "123" Then '如果选择的是123 Target.Interior.Color = RGB(255, 0, ...

相似回答