用VBA删除指定列

像删除第2,7,12,17,22.......后面数据多少不一定,打个比方如下... 像删除第2,7,12,17,22.......后面数据多少不一定,打个比方如下 展开
 我来答
很多游戏
高粉答主

2019-11-15 · 游戏精通者,攻略技能点满
很多游戏
采纳数:91 获赞数:386974

向TA提问 私信TA
展开全部

1、打开Excel表格,使用【Alt】+【F11】组合快捷键打开VBA编辑器,也可以点击菜单栏上面的【开发工具】,【Visual Basic】打开VBA编辑器。

2、在VBA编辑器的菜单栏上面点击【插入】,【模块】。

3、在VBA编辑器的代码框里面输入以下程序:

sub test11

for j = Cells(Rows.Count, 1).End(xlUp).Row to 1 step -1

if cells(1,j)="列名"  then

columns(j).delete

end if

next

end sub

4、点击VBA编辑器工具栏上面的“运行”图标运行程序,或者按下【F5】键运行程序。

5、然后程序运行完成后,将会弹出删除多少行的提示,Excel表格上面满足条件的行已经被删除。

chenjiawei5000
推荐于2017-12-16 · TA获得超过2779个赞
知道大有可为答主
回答量:2585
采纳率:30%
帮助的人:2053万
展开全部
Sub test()
Dim i As Integer, MyRange As Range
Set MyRange = Columns(2)
For i = 2 To 22 Step 5 '最后一列暂时定为第22列,你可以自己调整
Set MyRange = Union(MyRange, Columns(i))
Next i
MyRange.Select
MyRange.Delete
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-05-24
展开全部
应从右向左删,因为列数是个动态值,第二列永远都会在的,你删除了第二列,第三列自动晋级。所以要从右向左。行数同样。从下而上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友96ffcf7
2015-10-08 · 知道合伙人互联网行家
百度网友96ffcf7
知道合伙人互联网行家
采纳数:22721 获赞数:118724
从事多年网络方面工作,有丰富的互联网经验。

向TA提问 私信TA
展开全部
Sub test()
Dim i As Integer, MyRange As Range
Set MyRange = Columns(2)
For i = 2 To 22 Step 5
'最后一列暂时定为第22列,可以自己调整

Set MyRange = Union(MyRange, Columns(i))
Next i
MyRange.Select
MyRange.Delete
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式