VBA文本到列只有一个元素

我在Excel电子表格中有这样的数据单元格:CZ15.cbt,411.00,“4/2/2015”,“2:30 pm”,+ 4.25,406.75,412.25,403.25,36155

我唯一感兴趣的是第二个元素,即411.00。 他们的方法是复制这个值在另一个单元格?

到目前为止,我用这个代码:

Worksheets("Workspace").Range("A1").texttocolumns Destination:=Worksheets("Workspace").Range("A2"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _ Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), Array(9, 1)) 

这将单元格中的所有元素相互复制,然后将第二个元素引用到结果工作表中。 问题是,现在我有多个单元相邻的原始9个元素,他们会覆盖对方。

另一个select是垂直复制9个元素,以使它们全部在同一列中。 无论哪个更容易…

非常感谢你! 斯特凡

使用分割()

 Sub Stefan() ary = Split(Worksheets("Workspace").Range("A1").Value, ",") Worksheets("Workspace").Range("B1") = ary(1) End Sub 

这将创build一个数组,并且只使用第二个元素。

编辑#1:

为了做到这一点,我们使用一个循环:

 Sub Stefan() For i = 1 To 6 ary = Split(Worksheets("Workspace").Range("A" & i).Value, ",") Worksheets("Workspace").Range("B" & i) = ary(1) Next i End Sub 

一个公式可能适合:

 =MID(A1,FIND(",",A1)+1,FIND(",",A1,FIND(",",A1)+1)-FIND(",",A1)-1) 


FIND用来定位第一个逗号,也是第一个逗号后面的第一个逗号,然后分开它们的距离。 在这两个MID之间提取字符。