Excel精英培训网

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

[已解决]如何使用vba快速删除空白的列?

[复制链接]
发表于 2016-3-21 14:30 | 显示全部楼层 |阅读模式
我从erp中导出了一张库存报表,这个表项目很多,分有很多列,我只想保留有数据的列,没有数据的统统删掉,这个要怎么编写代码啊?请高手指教!
最佳答案
2016-3-21 15:45
gemini_ 发表于 2016-3-21 15:01
多谢老师,我不是很懂这个代码每条的意思,能否再麻烦老师逐条注释一下!

谢谢啦!
  1. Sub 删除空白列()
  2.     Dim jmax&, rng, j&  '定义变量
  3.     jmax = Cells(1, Columns.Count).End(1).Column    '数据区域的最大列
  4.     Set rng = Cells(1, jmax + 1)    '给变量初始值
  5.     For j = 1 To jmax   '循环语句,在1到最大列之间循环
  6.         If Application.CountA(Columns(j)) = 1 Then  '满足单列非空单元格数量为1的
  7.             Set rng = Union(rng, Cells(1, j))   '将满足条件的单元格放入变量
  8.         End If
  9.     Next
  10.     rng.EntireColumn.Delete '将单元格集合所在的列删除
  11. End Sub
复制代码

vba批量删除列.rar

3.07 KB, 下载次数: 14

 楼主| 发表于 2016-3-21 14:30 | 显示全部楼层
回复

使用道具 举报

发表于 2016-3-21 14:45 | 显示全部楼层
  1. Sub 删除空白列()
  2.     Dim jmax&, rng, j&
  3.     jmax = Cells(1, Columns.Count).End(1).Column
  4.     Set rng = Cells(1, jmax + 1)
  5.     For j = 1 To jmax
  6.         If Application.CountA(Columns(j)) = 1 Then
  7.             Set rng = Union(rng, Cells(1, j))
  8.         End If
  9.     Next
  10.     rng.EntireColumn.Delete
  11. End Sub
复制代码

vba批量删除列.rar

15.72 KB, 下载次数: 20

回复

使用道具 举报

 楼主| 发表于 2016-3-21 15:01 | 显示全部楼层
sry660 发表于 2016-3-21 14:45

多谢老师,我不是很懂这个代码每条的意思,能否再麻烦老师逐条注释一下!

谢谢啦!
回复

使用道具 举报

发表于 2016-3-21 15:45 | 显示全部楼层    本楼为最佳答案   
gemini_ 发表于 2016-3-21 15:01
多谢老师,我不是很懂这个代码每条的意思,能否再麻烦老师逐条注释一下!

谢谢啦!
  1. Sub 删除空白列()
  2.     Dim jmax&, rng, j&  '定义变量
  3.     jmax = Cells(1, Columns.Count).End(1).Column    '数据区域的最大列
  4.     Set rng = Cells(1, jmax + 1)    '给变量初始值
  5.     For j = 1 To jmax   '循环语句,在1到最大列之间循环
  6.         If Application.CountA(Columns(j)) = 1 Then  '满足单列非空单元格数量为1的
  7.             Set rng = Union(rng, Cells(1, j))   '将满足条件的单元格放入变量
  8.         End If
  9.     Next
  10.     rng.EntireColumn.Delete '将单元格集合所在的列删除
  11. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2016-3-22 12:18 | 显示全部楼层
sry660 发表于 2016-3-21 15:45

谢谢老师
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-6 17:56 , Processed in 0.451601 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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