我有一个表格的抽象,在Word VBA中有一个二维字符串数组。
现在我想将这个数组保存到word文档中的表中,而不需要遍历两个维度... afaik有一种方法可以从excel中获取Range(...)内容作为数组...
e.g:
Dim rng As Excel.Range
Set rng = excelTabelle.Range("A4:F" + CStr(lastRow))
arrData = rng.Value
是否有类似的解决方案将其粘贴到Word表格中?
迭代需要太多的时间来执行,所以我正在寻找一种更有效的方法来做到这一点。
Greets,poeschlorn
答案 0 :(得分:0)
一种解决方案可能是根据您的需要使用剪贴板。它不像在Excel中那么容易,但也许对你来说足够快。下面是一些示例代码,如何通过剪贴板将一些文本转换为2x3字表(将Microsoft Forms 2.0对象库的引用添加到您的VBA文档):
Dim oData As New DataObject
Dim sText As String
' Navigate to the top-left cell of your table (just an example)
Selection.HomeKey Unit:=wdStory
' Put text to the clipboard
sText = "X1" & vbTab & "B1" & vbTab & "C1" & vbCrLf
sText = sText & "A2" & vbTab & "B2" & vbTab & "C2" & vbCrLf
On Error Resume Next
oData.SetText sText
oData.PutInClipboard
On Error GoTo 0
' Select the needed rows and columns of the table'
Selection.MoveDown Unit:=wdLine, Count:=1, Extend:=wdExtend
Selection.MoveRight Unit:=wdCharacter, Count:=2, Extend:=wdExtend
' Paste the clipboard to the table '
Selection.Paste
我建议您调整它以将任意二维数组放入字符串并以类似方式粘贴它。如果您需要更多帮助,请回来告诉我们更多细节。