VBA代码删除图形时保留数据有效性下拉框的技巧
---
操作步骤及问题发现
运行以下宏代码:
```vba
Sub delpic()
Dim pic As Shape
For Each pic In
Next
End Sub
```
是否发现数据有效性下拉框不见了?
数据有效性下拉框被误删问题分析
数据有效性下拉框被视为图形文件被错误删除。尝试在C1、C2单元格设置数据有效性,然后执行以下代码:
```vba
Sub xsyxxname()
Dim pic As Shape, i As Integer
i 2
For Each pic In
Range("B1")
Range("B" i)
i i 1
Next
End Sub
```
发现即使设置多个数据有效性,通过``得出结果却仍为1;数据有效性名称用`Name`获取为Drop Down 1。是否存在规律?
数据有效性名称规律探究
删除C1、C2单元格数据有效性后,重新设置并执行`xsyxxname`宏代码,发现名称变为Drop Down 2。推测数据有效性名称遵循Drop Down X格式命名规则。
解决方案与修改后代码
将第一步的宏代码修改如下:
```vba
Sub delpic()
Dim pic As Shape
For Each pic In
If InStr(1, , "Drop Down") 0 Then
End If
Next
End Sub
```
这样就能避免误删数据有效性框。
---
通过以上分析和调整,可以有效利用VBA代码删除图形时保留数据有效性下拉框,提高Excel表格操作的准确性和效率。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。