ExcelVBAのReplace関数でセルの文字列の一部を置換する

この記事では当方がExcelVBAプログラミングの仕事で必要になった処理をまとめております。
住所を番地までCONCATENATEの関数で結合して上書き保存してしまった。住所を番地の手前で分けたい。けれども、どうしていいかわからない方向けの記事です。

ExcelVBAのReplace関数でセルの文字列の一部を置換する方法

「Excelに住所と番地を分けて入力していたが、CONCATENATE関数で住所と番地を結合して上書き保存してしまった。元に戻すことは可能ですか?」とご相談いただきました。Windowsでボリュームシャドウコピーを設定していれば可能でしたが、Windowsでボリュームシャドウコピーを設定されていなかったのでExcelVBAで置換することにしました。

手入力だとデータの件数が多くて時間がかかりすぎることでもExcelVBAだと一瞬でできたりします。

事前準備としまして下記のデータをご用意ください。

セルの文字列の一部を置換するコードの作成


「開発」タブをクリック
「Visual Basic」をクリック
「セルの文字列の一部を置換する」コードの入力

セルの文字列の一部を置換するコードの解説

今回作成するコードのポイントは下記1点です。

  • Replace関数で文字列を置換する

Replace関数の引数のイメージは下記になります。
Replace(文字列, 置換したい文字列, 置換後の文字列)

※コード作成になれるまでは必ず紙に書き出して考えるようにしましょう!

ボタンにセルの文字列の一部を置換するマクロの登録

手順については「ExcelVBAでブックのシート名を検索して見つかったときにシートをアクティブにさせる方法」の記事の「シート検索ボタンにマクロを登録」を参照ください。

セルの文字列の一部を置換するコードの実行


「置換」ボタンをクリック


住所と番地を再度分けることができました。

結論(まとめ)

「ExcelVBAのReplace関数でセルの文字列の一部を置換する方法」を解説しました。

  • セルの文字列の一部を置換するコードの作成
  • ボタンにセルの文字列の一部を置換するマクロの登録
  • セルの文字列の一部を置換するコードの実行

Follow me!

The following two tabs change content below.
mouri49
大阪生まれの大阪育ち。システム開発系、パソコン教室運営管理、パソコンサポートの仕事を中心に10年以上IT業界に生息しているけれども、実はHTMLやCSSが苦手。 パソコン教室やパソコンサポートなどでお客様から「ありがとうございます。」という感謝の言葉をいただいたときにやりがいを感じる。もっと自分のITのスキルで人様のお役に立ちたいと考え、義経ITクラブを開業して日々を送る。

ベストセラー著者森山義章の著書『40代主婦が副業で月5万円以上の副収入を得るブログの稼ぎ方』

処女作出版記念につきなんと今だけ99円!

Amazon言語学の参考図書部門第1位獲得
Amazon女性と仕事 (Kindleストア)部門第1位獲得

・1ヶ月以内にたった7つの記事でGoogle検索順位1位を獲得するブログライティング術

・ブログの稼ぎ方

について学べます。

まだ読まれていない方は99円の今がチャンス!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA