• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルの文字列中の指定した位置の文字列の置き換え(REPLACE)。)

エクセルの文字列中の指定した位置の文字列の置き換え(REPLACE)

このQ&Aのポイント
  • エクセルの文字列中の指定した位置の文字列を置き換える方法を紹介します。
  • 特定のセルに式を入力することで、指定した位置の文字列を置き換えることができます。
  • さらに、オートフィル機能を使うことで効率的に複数行の文字列を一括で置き換えることができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • xls88
  • ベストアンサー率56% (669/1189)
回答No.4

REPLACE関数を入れ子に出来ます。 B1に =REPLACE(REPLACE(REPLACE(A1,5,0,"-"),16,0,"-"),21,0,"-") B1セルを選択>選択枠右下角の■(フィルハンドル)をダブルクリック オートフィル入力範囲が選択状態のまま Ctrl+C とキー操作でコピー その場で「形式を選択して貼り付け」の「値」で貼り付け キー操作は Alt+E、S、V、Enter 更に簡単な操作はマクロになります。 ただ、知識が無いと作るのに時間がかかります。 Dim c As Range For Each c In Range("A1:A100") With WorksheetFunction c.Offset(, 1).Value = .Replace(.Replace(.Replace(c.Value, 5, 0, "-"), 16, 0, "-"), 21, 0, "-") End With Next c

gx9wx
質問者

お礼

実際にはA列には不規則なデータがはいっていて、 それにより-の位置もかわります。 よってこの REPLACE関数を入れ子 が一番うまく出来ました。 ありがとうございました。

その他の回答 (3)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 外していたらごめんなさい。 文字数の規則性があるという前提で・・・ B1セルに =LEFT(A4,4)&"-"&RIGHT(LEFT(A4,13),9)&"-"&LEFT(RIGHT(A4,6),4)&"-"&RIGHT(A4,2) という数式を入れ、フィルハンドルの(+)マークでダブルクリックではダメでしょうか? 以上、お役に立てば良いのですが 的外れなら読み流してくださいね。m(__)m

  • qyukip
  • ベストアンサー率40% (13/32)
回答No.2

この様にしてみてはいかがでしょうか? LEFT(A1,4)&"-"&MID(A1,5,9)&"-"&MID(A1,14,4)&"-"&RIGHT(A1,2)

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

ルールがあるのなら、文字の置き換えで全てを一気に置き換えては。

関連するQ&A