← コード一覧へ戻る
基本文字・日付

Splitの結果から1つの要素を直接取り出す

Splitで分割した配列を変数に保存せず、添字を続けて指定して必要な文字列を取得します。

実行前に確認

  • Splitの配列は0から始まります。2番目の要素は(1)です。
  • 存在しない添字を指定するとエラーになります。区切りの数が不明な入力では、一度配列へ入れてUBoundで確認してください。
  • 空文字列をSplitすると要素のない配列になるため、(0)でも取り出せません。
  • Excel実機での動作は未確認です。コピーした練習用ブックで試してください。

1サンプルコード

Option Explicit

Sub Example7046()
    Dim text As String
    Dim secondItem As String

    text = "東京,大阪,福岡"
    secondItem = Split(text, ",")(1)
    MsgBox secondItem, vbInformation, "2番目の要素"
End Sub

図で見るカンマで分けて2番目を取り出す

イメージ図

3都市の文字列から「大阪」だけを取得します。

  1. 元の3都市

    text = "東京,大阪,福岡"

  2. 分割して添字1を指定

    Split(text, ",")(1)で、0から数えた2番目を取得

  3. 大阪を表示

    secondItemに「大阪」が入り、MsgBoxに表示

この入力には3要素あります。空文字列や要素不足で同じ添字を使うとエラーになります。

コードの処理を説明する模式図です。実際の画面や実行結果を撮影したものではありません。

使い方・実行手順を確認する4つの手順で、コードの使い方を確認できます
  1. 1

    Windows版デスクトップExcelの練習用ブックを.xlsm形式で保存します。Alt+F11でVBEを開き、[挿入]→[標準モジュール]で作った空のモジュールに、Option Explicitから末尾まで、この例だけを貼り付けます。

  2. 2

    セルの準備は不要です。カンマで区切った3都市をコード内に用意しています。

  3. 3

    Example7046のSub内にカーソルを置き、F5キーで実行します。

  4. 4

    メッセージに「大阪」と表示されます。添字0が東京、1が大阪、2が福岡です。

使っている機能の公式ドキュメント(Microsoft Learn)