使用vba在Excel中模拟粘贴操作

我想填充一个Excel电子表格使用VBA(实际上是不同的使用COM服务器,但它是相同的语法)。 这是一个报告,我想在Excel中编写格式和演示文稿的目的。 由于所涉及的技术,CSV出口和其他技术不合算。

所以,我可以在每个单元格中写入每个值,但是速度很慢,所以我决定一次写出一堆值(比方说每次250条logging)。 所以我存储由回车分隔的值,如果我复制/粘贴使用VBA它完美的作品。

问题是,我不能使用剪贴板(因为报表多次同时执行),所以我可以在不使用剪贴板的情况下从Excel中的值列表中模拟粘贴操作(或其他类似操作)?

谢谢,

在VBA中复制值的最快方法我知道的是

Range("destrange") = Range("srcrange") 

destrangesrcrange应该是相同的大小。 也没有格式化数据等将被复制。

编辑:这是可能是有用的东西。

您可以创build一个Variant的数组并将其分配给一个范围:

  Dim v() As Variant ReDim v(1 To 20, 1 To 10) 'Fill v v(5, 5) = 42 '... Range("a1:j20").Value = v