我正在完成一个我构建的程序,该程序用于将Excel导入数据库,执行一些操作/编辑,然后输出编辑后的excel。除了我的问题是文件大小刚刚膨胀到一个巨大的数量,从大约3mb到~19mb。
它有相同的记录数~20k。它还有大约3列(总共40+列)-但这不应该使文件大小为x6,不是吗?下面是我用于输出的代码:
DoCmd.OutputTo acOutputQuery, "Q_Export", acFormatXLS, txtFilePath & txtFileName有什么想法可以让我的文件更小一点吗?或者任何人至少有一个可能的迹象表明是什么在做它?
发布于 2013-07-12 01:45:44
有三个可能的原因会立即浮现在脑海中: 1)您导入的记录比您认为的要多。导入Excel文件后,请检查表格。确保表中的记录数与Excel中的数据行数完全相同。通常,导入过程会引入许多空记录,然后将这些数据导出为空字符串。对你来说,它看起来是一样的,但对Excel来说,它是必须存储的信息,这会占用空间。
2) Excel处理空值的方式与Access不同。如果您的数据有许多丢失的信息,则在导入Access时,将以不同的方式存储这些信息。这实际上将我们带回了第一个原因。
3)导入数据时,有时会出现尾随空格。确保在导出数据之前修剪()数据,以清除正在使用的任何潜在存储空间。
https://stackoverflow.com/questions/17599530
复制相似问题