簡體   English   中英

如何將單元格中的子字符串分成VBA中的數組

[英]How to separate substrings in a cell into array in vba

我想知道是否有人可以給我一些指導。 我在每一單元格中有一列這樣排列數據:

Column E

E1-  name-age(nickname)   name-age(nickname)   name-age(nickname) ....
E2-  name-age(nickname)   name-age(nickname)   name-age(nickname) ....
etc...

問題是所有內容都在同一列中,我知道我可以使用文本對功能進行列並按空格定界。 但是,是否有更優雅的方法可以做到這一點? 如果可能,我想通過vba進行操作。

我的最終目標是將每個“姓名-年齡(昵稱)”對聯捕獲到一個數組中。 目前我在vba -wise上已經開始

Sub SplitColumn()
    Details = Cells(i, 5).Value  // where the big column data is located
    tempString = Left(Details, InStr(Details, "  "))
End Sub

這樣,我只能在該單元格中獲得第一個名字-年齡(昵稱)對聯。.是否有更好的方法來解決這個問題?

在此先感謝您的幫助。

您正在將子例程命名為“ Split列”,但是沒有使用拆分功能。

您有兩種選擇:

  1. 按空間划分

例如,cellvalue只是引用您單元格的變量名稱。 對於多個單元,您可能會循環通過。

  vArray As Variant
  vArray = Split(cellvalue, " ") 
  1. 利用菜單欄中的“ Text to Columns向導。 然后將范圍轉置或轉儲到變量數組中。

例如

vArray = Sheets(1).Range("A1:H10").value

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM