|
>特定の文字列
は、"a" ということで、その直後に必ず半角スペースがあるものとします。
>一つのセルに文字列
このセルを、仮にアクティブシートの A1 とします。
目的とする配列は、Ary2 として作成されます。それを使った実際の処理は
Debug.Print 〜 の部分と
With Application.VBE.MainWindow
〜
SendKeys "^(g)"
の部分を削除して書いて下さい。
↓のコードは、あくまで検証用ですから、イミディエイトウィンドウに
結果を出力して、直ぐ見られるように書いているためです。
あと、マクロの終了直前(End Sub の前)には、
Erase Ary1, Ary2
と、配列変数を初期化しておくのが望ましいです。
Sub MyAry()
Dim Ary1 As Variant
Dim Ary2() As String
Dim Ck As Integer, i As Integer
Ary1 = Split(Cells(1, 1).Value, vbLf)
For i = LBound(Ary1) To UBound(Ary1)
Ck = InStr(1, Ary1(i), "a")
If Ck > 0 then
ReDim Preserve Ary2(i)
Ary2(i) = Right$(Ary1(i), Len(Ary1(i)) - (Ck + 1))
Debug.Print "要素 " & i & " は " & _
Ary2(i) & " 文字数は " & Len(Ary2(i))
End If
Next i
With Application.VBE.MainWindow
.Visible = True
.SetFocus
End With
SendKeys "^(g)"
End Sub
|
|