2010-09-27 40 views
1

我有一个间隔分隔的字符串的单元格说“NULL 9”如何在Excel输入只是一个单元格中创建多单元格数组公式?

说这个数据存储在A1中。

我有一个名为

Function splitCell(str As String) As String() 
    splitCell = split(str, " ") 
End Function 

我试图给电池打入一个字符串数组,有什么话,我想做的是有一个公式如

{=splitCell(A1)}

功能在地点A2和A3处,以便A2将包含“NULL”并且A3将包含“9”。我哪里错了?请帮忙。由于

回答

2

您需要分配斯普利特变体的结果,如果你想要得到的结果是垂直相当水平,你需要转置它。

Public Function SplitCell(rng As Range) As Variant 
    SplitCell = Application.Transpose(Split(rng)) 
End Function 
1

你可以做到这一点完全与Excel公式:

A2: =LEFT(A1,FIND(" ",A1)) 
A3: =MID(A1,FIND(" ",A2)+1,LEN(A1)-FIND(" ",A2)) 

这应该给你结果你是经过。

+1

很难推广到n个细胞。有数组公式解决方案吗? – xiaodai 2010-09-27 01:57:59

0

对不起,错过了您想扩展到简单版本之外的内容。

Function splitCell(str As String, pos As Integer) As String 
    Dim strarray() As String 
    strarray = Split(str, " ") 
    splitCell = strarray(pos) 
End Function 

A2: =splitCell(A1,0) 

你需要把功能到模块(未在表代码)

相关问题