調べたいExcel-VBAの使用例などキーワードを入力してください

文字の置換をエクセルVBAでやる方法

エクセルVBAデータの操作データの操作

スポンサーリンク


スポンサーリンク

エクセルの【検索と置換】機能って面倒じゃない?

エクセルVBAを使って作成した住所録のデータを使ってイベント参加者をリストアップした時に感じたことですが、元々の住所録リストには「男」「女」としている部分を「男性」「女性」に置き換え用とした時の事です。

皆さんにお配りする参加者リストなので「男」より「男性」の方がいいですよね。

今さら住所録を修正するのも大変な作業なので参加者に配布するエクセルの文字を置き換えられないか?

[検索と置換]ダイアログボックス

エクセルの標準機能に置換があります。1回きりとか時々ならばわざわざエクセルVBAでやらなくてもいいでしょう。

ただ今回作りたいエクセルは、参加するたびに回数を集計したり男女別に分けて集計したデータを使おうと考えているので、イベント開催の度にこの置換作業をするのも面倒かな?

どうせならばエクセルVBAで参加者全員入力終わったらコマンドボタンを押したら、自動的に参加者リストは男女が男性・女性に考えたほど難しくはありませんでした。

Replaceで一発置換

エクセルVBA住所録4スポンサーリンク



上の表を参考にすると、セルD2~D5に性別が入力されているので「男」を「男性」と「1」へ「女」を「女性」と「2」へそれぞれ置換します。

検索方法は2種類あって「完全一致」は【xlWhole】、「部分一致」は【xlPart】です。

ここでは住所録リストからデータを用いるので、完全一致のxlWholeを使います。

Private Sub CommandButton1_Click()
With Range(“D2:D200″)
.Replace What:=”男”, Replacement:=”男性”, LookAt:=xlWhole
.Replace What:=”女”, Replacement:=”女性”, LookAt:=xlWhole
End With
End Sub

  1. コマンドボタン(CommandButton1)を押したら
  2. Withステートメント開始
  3. 置換する範囲をD2からD200に指定
  4. “男”表記を見つけたら、”男性”に置き換える、検索は完全一致
  5. “女”表記を見つけたら、”女性”に置き換える、検索は完全一致
  6. Withステートメント終了
  7. 終了

これでD列に入力されていた性別「男・女」が「男性・女性に」置き換えられました。

とても簡単にできましたね。

Replace(置換)
引数内容
What検索する文字
Replacement置換する文字
LookAt完全一致【xlWhole】・部分一致【xlPart】
波乗りアヒル
波乗りアヒル

ご覧いただきありがとうございます。

ブログランキングに登録しています。

少しでもお役に立てれば幸いで、参考になったようでしたら応援よろしくお願いします。


Microsoft Officeランキング

ユーザーフォームを使えばこんなに便利に早く作業が終わりますよ
波乗りアヒル
波乗りアヒル

エクセルの勉強お疲れ様です。ちょっとひと休みしませんか?

ボタン1つで作業完了へ
ちょっとの工夫でエクセル作業が飛躍的に早く終わったらいいなあ~と思いませんか? 面倒くさい作業よ!さようなら!

スポンサーリンク


データの操作
参考になりましたらシェア宜しくお願い致します

山頂テラスデッキからの三段紅葉(2019年11月)

フリーパスって助成金つぎ込んでいいの?

コロナ禍のGo To トラベル以外にも助成金だらけでうらやましいね。

安くなったフリーパスで遊びに行きたいけど、給与も減って余裕ないよね。

Excel VBA