我可以使用For
构造来遍历字符串数组元素并将其内容复制到范围的各个单元格中;但有没有一种更简单的方法可以直接将字符串数组项复制到Range?
问题Range to string array解决了与我想要做的完全相反的问题。
答案 0 :(得分:8)
喜欢这个
Sub StringArrayToRange()
Dim strArr(3) As String
strArr(0) = "one"
strArr(1) = "two"
strArr(2) = "three"
Range("A1:A" & UBound(strArr) + 1) = WorksheetFunction.Transpose(strArr)
End Sub
另外,this了解更多示例和教程
修改强>
这个documentation解释了WorksheetFunction.Transpose
被使用的原因
答案 1 :(得分:0)
你真的需要一个单元格中的数组吗?请记住,您可以定义一个等于数组值的变量:var1 = {v11,v12,v13; v21,v22,v23}
然后将“= INDEX(var1,2,2)”放入任何单元格中以获得值v22。
答案 2 :(得分:0)
我还有另外一种做法:
Dim Arr()
With ThisWorkbook.Sheets("MassHeals")
Arr = Array("1", "2", "3", "4")
.Cells(1, 1).Resize(1, 4).value2 = Arr
End With
数组设置在一行中,我不使用转置。