エクセルで置換えたい文字列が、統一されていない時、部分一致で検索して、文字を置換えたいときがありませんか。ここでは、エクセルVBAで、ワイルドカードを使って文字列の置換をしています。文字列の置換には、Replace メソッドを使います。Replace メソッドは、セルの範囲で文字列を他の文字列に置換します。例えば、Aを含む文字列を、文字列「A」で統一する置換えができます。置き換える文字列の数が少ないと、手作業で置換えてもいですが、セル範囲で文字列を置換えたい場合は、VBAで置換えた方が、簡単に一括で置換えられます。エクセルVBAでのワイルドカードを使った文字列の置換は、単純な置換よりも、複雑な文字の置換ができるようになります。Replace メソッドは、構文が長いので使い方が難しそうに思えますが、通常の置換は引数は省略するので、簡単に作成できます。

Replace メソッド
Replace メソッドは、文字列を他の文字列に置換します。
ワイルドカードを使った置換えは、Replace メソッドで一括でできます。
Replace メソッドの構文
object.Replace ( what, replacement [, lookat, searchorder, matchcase, matchbyte, searchformat, replaceformat ] )
ワイルドカードを使ってセル範囲を置換
エクセルVBAで、ワイルドカードを使った置換えをします。
置換には、Replace メソッドを使います。
部分一致で、セル範囲「B2:C8」の文字列を、他の文字列に置換えるコードです。
Sub セルの範囲を部分一致で置換()
Range(“B2:C8″).Replace What:=”*上級*”, Replacement:=”上級”
End Sub
使用例
下の表の、セル範囲「B2:C8」に入力されている文字列の置換をします。
「上級」の表示が、まばらになっています。全て「上級」で統一してみましょう。

1.標準モジュールに、コードを入力しましょう。

Range(“B2:C8″).Replace What:=”*上級*”, Replacement:=”上級”
2.VBAを実行すると、全て「上級」で統一されました!

ワイルドカードを使って1列を置換
部分一致で、A列の文字列を、他の文字列に置換えるコードです。
Sub 列を部分一致で置換()
Range(“A:A”).Replace What:=”株式会社*”, Replacement:=”(株)”
End Sub
使用例
下の表の、A列に入力されている文字列の置換をします。
A列の会社名の、「松田株式会社」は同じ会社ですが、会社名の後ろに支店名が入力されています。
支店名を削除して、「松田株式会社」で統一してみましょう。

1.標準モジュールに、コードを入力しましょう。

Range(“A:A”).Replace What:=”松田株式会社*”, Replacement:=”松田株式会社”
2.VBAを実行すると、支店名が削除されて、「松田株式会社」で統一されました!

こちらの記事もご覧ください。⇒エクセルVBAが初心者でも短期間でマスターできる楽パソ!音声と映像で自宅で学べる。
こちらの記事もご覧ください。⇒プログラミングスキルが初心者でも短期間でマスターできる楽パソ!音声と映像で自宅で学べる。
ワイルドカードを使った複雑な置換
エクセルで検索、置換えはよく使う機能です。ですが、決まった文字列の置換え作業がよくある場合は、エクセルVBAを使った方が簡単にできます。文字列が統一されていない時は、ワイルドカードを使うと文字列を統一することもできます。エクセルVBAでのワイルドカードを使った置換えは、通常の使い方と同じです。「*」アスタリスク、「?」疑問符が使えます。例えば、会社名や商品名などが統一されていない時、ワイルドカードを使うと一括で、バラバラだった文字が統一できます。エクセルVBAで、ワールドカードを使った置換えは、利用法が色々あります。ワイルドカードを使って文字列の中にあるスペースを取り除き、かつ文字の統一もできるので、ぜひお試しください。
こちらの記事もご覧ください。⇒エクセルVBAで、シート全体を一括で置換する
エクセル・ワード・パワーポイント・アクセス・マクロVBA・WEBプログラミングを入門から応用までらくらくマスターできる ➡ 動画パソコン教材 |
エクセルのマクロとVBAを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
ワード・エクセルパワーポイント・アクセスとエクセルマクロVBA・WEBプログラミング・パソコンソフト作成を入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
VBA・Java・WEB・C#・HTML/CSSプログラミングを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
ワード・エクセル・パワーポイント・アクセスを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
ワード・エクセル・パワーポイント・アクセスとWEBプログラミングを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓