エクセル(Excel)の使い方/関数・数式

Excelで文字列を置換するSUBSTITUTE関数の使い方(2ページ目)

この記事では、エクセルで文字列を自由自在に置き換える「SUBSTITUTE」関数の組み合せ術をご紹介! 活用頻度の高いこの関数。単体での使用法から組み合わ術、並べ替え機能に応用する方法まで、コンパクトにまとめてみました。

緑川 吉行

執筆者:緑川 吉行

エクセル(Excel)の使い方ガイド

すべての空白を削除する

さて。このSUBSTITUTE関数。前ページでは単体で使用する方法を紹介しました。他の関数などと組み合わせることで様々な利用法が考えられますが、ここでは「複数のSUBSTITUTE関数を組み合わせる」という組み合わせ術を紹介します。

次のサンプルをご覧下さい。セルに入力されている文字列内には「空白」が含まれています。この空白を削除することを考えます。



この空白を取り除くために、SUBSTITUTE関数を使います。
検索文字列に「" "」、置換文字列に「""」を指定します。「""」は「長さ0の文字列」を表すので、結果的に空白が取り除かれた形になります。



おや?まだ空白が取り切れていません・・。よく見ると、残っている空白の文字幅は、他の文字列と比べて狭いようです。実は、このセルには「全角の空白」と「半角の空白」が混じっていたのです。


つまり、SUBSTITUTE関数で置き換えたい文字列が2種類(「全角の空白」と「半角の空白」)あるということです。そこで、次のようにSUBSTITUTE関数を組み合わせます。



1つ目の検索文字列(ここでは全角の空白)を置き換えたら、2つ目の検索文字列(ここでは半角の空白)は、「1つ目の置き換えた結果」に対して置き換え処理を行う、ということです。なお、文字列内に1つ目の検索文字列がなかった場合、置き換えは発生しないので、そのままの文字列が2つ目の置き換え処理の対象となります。

結果は次の通り。全角・半角ともに空白が削除されました。


なお、Excel2003までは、関数の入れ子(ネスト)は7個まで可能です。したがって、SUBSTITUTE関数を組み合わせて文字列を置き換えることができるのは7個までです。8個以上の文字列を置き換えたい場合は、7個単位に分けて別セルで処理します。
※Excel2007から、関数のネストは64個(!)に拡張されています。


  • 前のページへ
  • 1
  • 2
  • 3
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます