(Gスプレッドシート)カンマ区切りの文字列からn番目の項目を抽出する

 Googleスプレッドシートで、カンマ区切りになっている文字列から、指定した順番にある文字列を取り出す方法についてです。
 カンマ区切りだけでなく別の区切り文字であっても応用できます。

  • INDEX関数とSPLIT関数の組み合わせで、カンマ区切り文字列からn番目の項目を取り出すことができます。

手順

f:id:accs2014:20190531021632p:plain:right:w500

 B3セルに対象となるカンマ区切り文字列が記録されています。
 この文字列から4番目の項目「佐々木」を取り出すものとします。
 C3セルに以下のように入力します。

=INDEX(SPLIT(B3,","),4)

 SPLIT関数により文字列を分割し、INDEX関数で順番を指定して取り出しています。

f:id:accs2014:20190531021630p:plain:right:w500

 実行結果です。
 また、「","」の部分を「"_"」や「":"」などとすることで、さまざまな区切り文字に対応できます。
 改行で区切られている場合は「CHAR(10)」とします。

 なお、上記の式の場合、区切り文字が連続していてその間に文字がない場合はその項目には番号がつかず、次の(1文字以上の)項目に次の番号が与えられます。結果的に、抽出される項目がずれます。
 区切り文字が連続している場合でも無視せずに番号を与え、空文字として抽出する場合は以下のようにします。

=IFERROR(INDEX(SPLIT(B3,",",,FALSE),4),"")