Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2110|回复: 2

[已解决]如何循环删除某列的内容

[复制链接]
发表于 2017-2-18 17:24 | 显示全部楼层 |阅读模式
本帖最后由 lovelfg 于 2017-2-18 17:55 编辑

自己已经解决

现有一个EXCEL表,有若干表头,表头内容如下:
a,b,c,d,a,c,b,a,c,e,f,a
现要将表头为”a“的这一列数据删除,如何用VBA实现?

我想到一种法是将数据转置一下,再筛选就可以,但是由于不想破坏原数据,所以此方法不通。由于单元格的写法range("A"&i)【i为变量】,此方法只适用于删除行,想用cells(1,i)来表示,但发现cells似乎没有column的属性,所以来请教一个各位大神,万分感谢
最佳答案
2017-2-19 10:43
  1. Sub tt()
  2.     Dim i%, Cols%
  3.     Cols = Range("a1").End(xlToRight).Column
  4.     For i = Cols To 1 Step -1
  5.         If Cells(1, i) = "a" Then
  6.             Columns(i).Select
  7.             Selection.Delete shift:=xlToLeft
  8.         End If
  9.     Next
  10. End Sub
复制代码
发表于 2017-2-19 09:58 | 显示全部楼层
回复

使用道具 举报

发表于 2017-2-19 10:43 | 显示全部楼层    本楼为最佳答案   
  1. Sub tt()
  2.     Dim i%, Cols%
  3.     Cols = Range("a1").End(xlToRight).Column
  4.     For i = Cols To 1 Step -1
  5.         If Cells(1, i) = "a" Then
  6.             Columns(i).Select
  7.             Selection.Delete shift:=xlToLeft
  8.         End If
  9.     Next
  10. End Sub
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-29 14:46 , Processed in 0.753333 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表