2010-09-27 77 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) 

你需要把功能到模塊(未在表代碼)

相關問題