Tag: filesize

VBA – Excel无法增加文件大小

这个让我疯狂。 任何帮助是受欢迎的。 我有一个数字模拟不断写入到一个文本文件。 文件大小不断增加。 我需要报告文件大小,并检查它是否仍在增加或者是否已经停止增长。 VBA似乎无法检测到文件的增加的大小,它保持注册相同的大小。 但是,如果我有文件夹中的Windows资源pipe理器操作,并按F5,在VBA中的大小增加。 我需要知道它是否应该这样工作,因为Windows索引文件或者如果我做错了什么。 我已经使用filelen() , filesystemobject.filezise() , datelastmodified() , datelastacessed()和没有… 我已经find了一个workarround:如果我将有问题的文件复制到临时文件,然后读取临时文件大小,我可以检测到大小的变化。 但这是一个丑陋的解决scheme。 我非常想检查文件大小,并得到正确的结果。 对不起,如果不是很清楚。 如果有必要,我会很乐意进一步澄清。 这里是我一直在使用的代码,但要testing它,你将不得不模仿文件的写作情况,如在video编码,例如,因为如果你用记事本编辑的文本文件,它的行为也更新信息到vba。 Public fileSizeLastStep as long Public Sub sizeWatch() dim fso as new fileSystemObject dim fileToMeasure as File dim fileSizeNow as long Set fileToMeasure = fso.GetFile("C:\filename.txt") fileSizeNow = fileToMeasure.Size If fileSizeNow <> fileSizeLastStep Then fileSizeLastStep = […]

VBA复制列大幅增加文件大小

我在Excel中有以下一段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数据连接)复制几个列到不同的工作表。 源数据可以改变,因此我计算了当前有多less行使用variablessrc_rows 重复此代码以复制其他需要的列。 这一切都是我想要的。 但是,运行和保存后,文件大小从5MB左右跳到60MB左右! 它不可能是额外的数据,因为只有大约10K行。 如果我删除复制的数据,重新保存文件不会回落到5MB。 我也尝试使用range(__).copy destination:= ___ ,但这不起作用。 如果我手动复制,文件大小不会增加。 […]