我在Excel中下面的一段VBA代码:VBA拷贝列急剧增加的文件大小
Dim src As Worksheet
Dim des As Worksheet
Dim rows As Integer
Dim src_rows As Integer
Set src = Sheets("source sheet")
Set des = Sheets("destination sheet)
'Copy and Paste relevant columns
src.Activate
src_rows = Range("A1", Range("A1").End(xlDown)).Count
Range("A2:G2" & src_rows).Copy
des.Activate
Range("A2").PasteSpecial Paste:=xlPasteValues
我的目标是若干列从源片复制(这是由一个SQL数据连接填充)入一张不同的纸张。源数据可以改变,因此我计算当前有多少行使用变量src_rows
重复此代码以复制其他需要的列。这一切都按我的需要运作。但是,运行和保存后,文件大小从5MB左右跳到60MB左右!它不可能是额外的数据,因为只有大约10K行。如果我删除复制的数据并重新保存文件不会回落到5MB。
我也尝试过使用range(__).copy destination:= ___
,但这不起作用。 如果我手动复制,文件大小不会增加。如果我手动复制并记录宏并运行此宏,则文件会增加。
任何建议将不胜感激。
感谢简单求代码,注意到对别人,而是错过了它在这一个。 现在整合UsedRange,正在寻找比我所做的更好的东西。谢谢 – pokeairguy