Excel SUBSTITUTE関数で複数のテキストを置換(削除)する方法

2023年1月20日

English version.

テキストを置換するSUBSTITUTE関数は1つのテキストの置換にのみ対応していて、複数テキストの置換は不可能です。

ここではマクロを使わずに複数のテキストを置換する方法を紹介します。

手順

SUBSTITUTE関数は結果として置換後のテキストを返します。

(置換後のテキストを空白 "" にすると削除の動作になります)

そして置換後のテキストを更にSUBSTITUTE関数の引数として使うことが可能なため

SUBSTITUTE関数を入れ子にすれば複数テキストの置換が可能です。

複数のセルで実施

「いぬ:ねこ:すずめ:きんぎょ」を、一つずつ漢字に置換していきます。

まず「いぬ」を「犬」に置換します。

「いぬ」を「犬」に置換

そのセルを更にSUBSTITUTE関数で置換します。

全てを置換する方法

これを繰り返せば任意の数のテキストの置換が可能です。

単一のセルで実施

従来の方法

一つのセルにSUBSTITUTE関数を複数書いても有効です。

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(B3,"いぬ","犬"),"ねこ","猫"),"すずめ","雀"),"きんぎょ","金魚")
単一セルで変換する例

ただし置換の量が増えるほど、数式が読みづらくなり

編集時にエラーを起こすことが多くなるので推奨しません。

どうしても一つにセルにする必要がある場合を除き、

複数の列や行に並べて途中のセルを非表示にすることを推奨します。

LAMBDA関数を利用する方法

Microsoft365など新しい機能が反映されているExcelの場合、

SUBSTITUTE関数を重ねることなく実現可能です。

数式にはREDUCELAMBDAOFFSETを利用します。

何パターンでも同じ数式(SUBSTITUTEの数が変わらない)で問題ありません。

=REDUCE(元のテキスト,検索文字列,LAMBDA(r,s,SUBSTITUTE(r,s,OFFSET(s,0,1))))

置換文字列を検索文字列の右におき、数式には検索文字列のセル範囲と元の文字列を指定します。

Excel完全マスター: 関数・テクニック・新機能を網羅した決定版ガイド

本書は、Excelの基礎から応用まで、包括的に学べるガイドブックです。当サイトの豊富な情報を、電子書籍向けに最適化し、読みやすく再構成しました。

【本書の特徴】

  • 情報量:Word-A4サイズ換算で1,400ページ相当
  • 基本操作から高度なテクニックまで、段階的に学習可能
  • 140種類の関数を詳細に解説
  • 109種類の実用的なテクニックと具体例を紹介
  • 最新機能(XLOOKUP関数、LET関数、シートビュー、LAMBDA関数、スピル等)を徹底解説

【対象読者】

  • Excel初心者からプロフェッショナルまで
  • 体系的にExcelスキルを向上させたい方
  • 業務効率化を目指すビジネスパーソン
  • データ分析や可視化のスキルを磨きたい方

【本書の強み】

  • 実務に即した例題と解説
  • 視覚的な図表やスクリーンショットで理解を促進
  • 最新のExcelバージョンに対応した内容
  • 著者の長年の経験に基づく、実践的なTipsを多数収録

【更新とサポート】

  • 常に最新の情報を反映するため、定期的に内容を更新
  • 最新版の入手方法:Amazonカスタマーサポートへお問い合わせください

【入手方法】

  • 買い切り:950円
  • Kindle Unlimited:読み放題プランで利用可能

Excelマスターを目指す方、業務効率を劇的に向上させたい方に、自信を持っておすすめできる一冊です。この1冊で、Excelの可能性を最大限に引き出す力が身につきます。

関連記事

マクロ・VBAを利用して実現する方法

特定の文字列を置換(SUBSTITUTE関数)