0

誰かが私にいくつかの指針を与えることができるかどうか疑問に思っていました. 各セルに次のようにデータが配置された列が1つあります。

Column E

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

問題は、そのすべてが 1 つの列にあることです。テキストを列に並べる機能を使用して、それらをスペースで区切ることができることを知っています。しかし、これを行うためのよりエレガントな方法はありますか? できればvbaでやりたいです。

私の最終目標は、各「名前-年齢(ニックネーム)」対句を配列にキャプチャすることです。現在、私が vba で始めたのは -wise です

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

これで、そのセルで最初の名前と年齢(ニックネーム)の対句しか取得できませんでした..これにアプローチするより良い方法はありますか?

助けてくれてありがとう。

4

1 に答える 1

1

サブルーチンをSplit列として命名していますが、分割関数は使用されていません。

次の 2 つのオプションがあります。

  1. スペースで分割

たとえば、cellvalue は、セルを参照する単なる変数名です。複数のセルの場合、ループすることができます。

  vArray As Variant
  vArray = Split(cellvalue, " ") 
  1. Text to Columnsメニューバーのウィザードを利用します。次に、範囲をバリアント配列に転置またはダンプします。

例えば

vArray = Sheets(1).Range("A1:H10").value
于 2013-02-06T01:11:31.673 に答える