作者Maybetrue (No one Remember)
看板Visual_Basic
标题[VBA ] 有好方法可以选择多列吗?
时间Tue Mar 17 18:22:40 2009
我有一笔资料,但是列与列中间会插一些无意义的空列位。
为了方便我算总数以及定位置,我需要砍掉这些空列位。
但是空列位出现的列号不是具有规则的。
我目前的作法是用一个DO回圈检查,检查到该列的第一个储存格为无内容
就删除该列。例如:
If Cells(exampleRow, 1) = "" Then
Rows( exampleRow ).Delete (xlShiftUp)
End If
但是这样一个个删除很慢。不知道有没有办法可以先让我把空列位的列号存在
阵列中,再取出、多重选取多列,再一次删除多列的写法。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.128.79.49
1F:→ MOONRAKER:会删到很慢 你档案是有几万行 03/17 19:20
2F:→ Maybetrue:2000行就会感觉到慢了 03/18 11:54
3F:→ Semisphere:有关调自动计算? 03/18 19:25
4F:→ iBonus:先用第一栏为主要键将资料排序,非空白列集中後再继续处理? 03/18 19:53
5F:→ Maybetrue:用资料排序在我这个案例我觉得不适用耶。因为我手上的 03/18 22:59
6F:→ Maybetrue:资料不能把互相混杂。用资料排序的话,我怕会把不该参 03/18 23:00
7F:→ Maybetrue:近来的资料参进来,或者是漏掉原本该有的资料。 03/18 23:01
8F:→ iBonus:关闭萤幕更新让程式执行快一点 03/18 23:09
9F:→ iBonus:(Application.ScreenUpdating = False) 03/18 23:09
10F:推 yuchiuan:关闭萤幕更新有感觉比较快 很实用 03/19 11:06
11F:→ Maybetrue:谢谢@@" 03/19 23:32
12F:→ Maybetrue:关闭萤幕更新之後,执行起来好像当机@@""" 03/19 23:39
13F:推 dontgetup:可以考虑排序完在丢进阵列中.. 03/20 13:49
14F:→ iBonus:执行完记得恢复萤幕更新 03/21 00:19