如何在vba中实现multithreading和其他具体事宜

我有一个大约25张的电子表格。 在一些特别是6,7,13,17,18,19表我填充他们与数据库值。 在一些表格中,我填充了两个表格的数据。 现在我需要创build一个button,将执行以下操作。 在button单击事件我需要遍历所有工作表,看看是否有任何工作表填充。如果填充,然后将这些内容复制到一个文件。我已经实现了应付一个表内容到一个文件。

问题1)我不明白如何做多个文件。

问题2)如何logging一个特定的表格已经填充了两个表值。因为我需要每个表格创build一个文件。

问题3)最重要的这将花费很多时间,因此我想要加快我的操作,所以我想要做multithreading。 任何其他方式来提高速度将是伟大的。

程序从Excel中读取数据的时间很长。 这可能是速度最常见的投诉原因。
为了尽量减less这种开销,您需要在每个Read中传输尽可能大的数据块。
在VBA中,你可以通过给Variant指定一个Range来做到这一点:
Dim vArr as variant
vArr=Range("A1:Z5000")

现在,vArr将包含一个由2000列组成的26列2维数组。

通过Interop使用.NET这个技术更加重要,因为时间开销比VBA还要大。