REPLACE、REPLACEB 関数

Excel 2007+

概要

REPLACE関数は文字列の指定位置にある文字を別の文字列に置き換えます。REPLACEB関数はバイト単位で位置と文字数を指定するバージョンですが、現在は非推奨です。Unicode対応の高度なテキスト処理に最適です。

構文

REPLACE(文字列, 開始位置, 文字数, 置換文字列)
REPLACEB(文字列, 開始位置, バイト数, 置換文字列)

パラメータ

パラメータ タイプ 必須 説明
文字列 String はい 置き換え対象の文字列を指定します
開始位置 Number はい 置き換えを開始する位置(1が文字列の先頭)
文字数 Number はい REPLACE:置き換える文字数 / REPLACEB:置き換えるバイト数
置換文字列 String はい 新しい文字列で置き換えます

REPLACE, REPLACEB関数の使用

REPLACE関数はデータ入力ミス修正やフォーマット統一、動的な文字列操作に欠かせません。電話番号の市外局番変更、日付フォーマット変換、レポートデータの整形など多様な場面で活用できます。

REPLACE, REPLACEBの一般的な例

基本的な文字置き換え

=REPLACE("abcdefghijk",6,5,"*")

6文字目以降5文字を"*"に置き換え→"abcde*k"

年号更新

=REPLACE("2009",3,2,"10")

最後の2桁を"10"に置き換え→"2010"

先頭文字削除

=REPLACE("123456",1,3,"@")

先頭3文字を"@"に置き換え→"@456"

日本語テキスト

=REPLACE("東京都渋谷区",3,3,"新宿区")

3文字目から3文字を置き換え→"東京都新宿区"

よくある質問

REPLACEは文字単位、REPLACEBはバイト単位で処理します。REPLACEBは非推奨で、通常はREPLACEを使用してください。

はい、文字列の先頭が位置1です。

文字列の最後まで置き換えられます。

一般的なエラーと解決策

#VALUE! エラー

Cause: 開始位置や文字数が数値でない

Solution: 数値で入力してください

空の結果

Cause: 開始位置が文字列長を超える

Solution: 開始位置を文字列長以内にして下さい

注記

  • REPLACEBは非推奨です。今後はREPLACE関数を使用してください
  • Excel 2007以降で利用可能
  • 日本語を含むマルチバイト文字にはREPLACEを使用
  • サロゲートペア(絵文字等)は1文字としてカウント

互換性

利用可能: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365

利用不可: Excel 2003以前

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2007+