分割string和打印到不同的单元格,Excel VBA
我是VBA的新手,为了解决这个问题一直在努力。 我有一个三个字符的string,我想拆分,并将值放入Excel中的数组。 所以举个例子,
Sub Splitdata() Dim x As Variant Dim txt As String txt = "Today is sunny" x = Split(txt) Range("C1:C3").Value = x End Sub
但是,这只返回单元格C1-c3中string的第一个字符,即“今天”。 我想象一个循环是必需的,但我不知道如何做一个。 还有解决这个问题的一般方法吗?
是的,你可以通过改变你的分裂线来解决你的问题:
x = Split(txt, " ")
编辑:并更改传递结果表单到这一行:
Range("C1:C3").Value = Application.Transpose(x)
将一维数组分配给一个范围时,默认情况下它将水平移动(所以C1:E1工作正常),而不是垂直。
但是,您可以使用Transpose()
来翻转该数组,以便填充垂直范围:
Range("C1:C3").Value=application.transpose(split("abc"))