第115回.Split関数
各要素(区切り文字)ごとに区切られた文字列から 1次元配列を作成し返します。
つまり、
Split関数は、文字列を指定の区切り文字で分割し1次元配列を作る関数です。
マクロVBAの文字列操作においてはSplit関数はとても重要かつ必須になりますので、しっかりと習得してください。
Split関数
Split(expression[, delimiter[, limit[, compare]]])
expression |
必ず指定します。 |
delimiter |
省略可能です。・・・でも必ず指定して下さい。 |
limit |
省略可能です。 |
compare |
省略可能です。 |
配列の添字の最小値は常に、0 です。
Option Base ステートメントの影響を受けません。
他の配列の下限を1にしている場合などは、添字の指定に注意してください。
区切り文字が文字列式内に存在しない場合
文字列式全体の文字列を含む単一の要素(UBoundが0)の配列を返します。
区切り文字(delimiter)に長さ0の文字列 ("") を指定した場合も同様です。
Dim v
v = Split("a,b,c", " ")
このとき変数Vは、以下の状態になります。

空文字("")をSplitした場合
Dim v
v = Split("")
このとき変数Vは、以下の状態になります。
TypeName(v) ・・・ String()
LBound(v) ・・・ 0
UBound(v) ・・・ -1

Split関数の使用例
Sub sample()
Dim strBuf As String
Dim strSplit
Dim i As Long
strBuf = "aa,bbb,cccc,dd"
strSplit = Split(strBuf, ",")
MsgBox Join(strSplit, vbLf)
End Sub
上記では、
文字列"aa,bbb,cccc,dd"を、","で区切り、配列にしています。
そして、配列をJoin関数で、VbLfでつなげる事で、
メッセージBOXに、改行して表示しています。


同じテーマ「マクロVBA入門」の記事
第112回.動的配列(Redim)
第113回.配列に関連する関数
第114回.セル範囲⇔配列(マクロVBA高速化必須テクニック)
第115回.Split関数
第116回.ファイル操作Ⅱ(OpenとClose)
第117回.ファイル操作Ⅱ(Line Input #)
第118回.ファイル操作Ⅱ(Print #)
第119回.ファイルシステムオブジェクト(FileSystemObject)
第120回.OnTimeメソッド
第121回.SendKeysメソッドとAppActivateステートメント
第122回.Shell関数
新着記事NEW ・・・新着記事一覧を見る
VBA100本ノック 100本目:WEBから100本ノックのリストを取得|VBA練習問題(3月3日)
VBA100本ノック 99本目:自動席替え(行列と前後左右が全て違うように)|VBA練習問題(3月2日)
VBA100本ノック 98本目:席替えルールが守られているか確認|VBA練習問題(3月1日)
VBA100本ノック 97本目:Accessデータを取得(グループ集計)|VBA練習問題(2月27日)
VBA100本ノック 96本目:Accessデータを取得(マスタ結合&抽出)|VBA練習問題(2月26日)
VBA100本ノック 95本目:図形のテキストを検索するフォーム作成|VBA練習問題(2月24日)
VBA100本ノック 94本目:表範囲からHTMLのtableタグを作成|VBA練習問題(2月23日)
VBA100本ノック 93本目:複数ブックを連結して再分割|VBA練習問題(2月22日)
VBA100本ノック 92本目:セルの色を16進で返す関数|VBA練習問題(2月20日)
VBA100本ノック 91本目:時間計算(残業時間の月間合計)|VBA練習問題(2月19日)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
6.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.マクロはどこに書くの(VBEの起動)|VBA入門
10.とにかく書いてみよう(Sub,End Sub)|VBA入門
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。