目次
をお探しの方。 文字列の中のテキストを置き換える エクセル使い ブイビーエー そこで、この記事では、文字列の一部を置換することで、文字列の再入力の手間を省くことができます。 それでは、本記事で、この置換作業の詳細を説明します。
ワークブックダウンロード
String.xlsmの文字列を置換するExcel VBAで文字列を置換する5つの方法
ここで、従業員のEメールアドレスが記録された以下のデータセットがある。 我々の仕事は、古いドメイン名を新しいドメイン名に置き換えることである。 以下の方法では、このデータセットと、いくつかのランダムなテキスト文字列を用いて、目的のテキストに置き換える作業を行う。 ブイビーエー のコードです。
を使用しています。 Microsoft Excel 365 のバージョンがありますが、ご都合に合わせて他のバージョンもお使いください。
Method-01:ランダムな文字列のn番目の位置から始まる文字列を置換する。
ここでは、開始位置の異なるランダムな文字列でテキストを置き換えることにします。
Step-01 :
➤ に進みます。 デベロッパー タブ>> コード グループ>> ビジュアルベーシック オプションです。
その後 Visual Basic エディター が開きます。
➤ に進みます。 インサート タブ>> モジュール オプションです。
その後 モジュール が作成されます。
ステップ02 :
➤ 次のコードを書いてください。
Sub substitution_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "百台 五十台 十台" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1) MsgBox updated_str End Sub
ここでは、以下のように宣言しています。 full_txt_str と update_str かわりに 文字列 を割り当てた上で full_txt_str をランダムなテキスト文字列に変換します。 "百台 五十台 十台" .それから ブイビーエー REPLACE機能 を置き換えるために使用されます。 車 このランダムな文字列の一部を 自転車 と 1 の位置から置換を開始するために使用されます。 1 最後に、この新しい文字列を update_str とメッセージボックス付き( MsgBox ) の結果を見ることができます。
➤ プレス F5 .
では、a メッセージボックス は、置換された新しいテキスト文字列と一緒に表示されます 自転車 .
➤ 2つ目のインスタンスから入れ替え処理を行うため 車 は、次のコードを使用してください。
Sub substitution_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "百台 五十台 十台" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 14) MsgBox updated_str End Sub
ここでは、開始位置を 14 の後に文字列の部分を持たせたいからです。 百台 に置き換えてください。 車 をご覧ください。
➤後 ランニング というコードにすると、次のようになります。 メッセージボックス とのことです。 テキスト文字列 起点 フィフティ とのことです。 自転車 にあっては 車 .
この文字列の最後の部分のみを持つために、以下のコードを適用しています。
Sub substitution_of_text_1() Dim full_txt_str, updated_str As String full_txt_str = "百台 五十台 十台" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 25) MsgBox updated_str End Sub
ここでは、開始位置を 25 の後に文字列の部分を持たせたいからです。 フィフティカーズ に置き換えてください。 車 をもって 自転車 をご覧ください。
最後に メッセージボックス で置換され、文字列の希望する部分が 自転車 .
続きを読む: Excel VBA:文字列内の文字を位置で置換する(4つの効果的な方法)
Method-02:ExcelVBAでランダムな文字列のn番目に出現する文字列を代入する
を用いて、出現回数の異なるランダムな文字列にテキストを置き換える。 ブイビーエー のコードで表示されます。
ステップス :
➤フォロー Step-01 の 方法-1 .
➤ 次のコードを入力します。
Sub substitution_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "百台 五十台 十台" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1, 1) MsgBox updated_str End Sub
ここでは、以下のように宣言しています。 full_txt_str と update_str かわりに 文字列 を割り当てた上で full_txt_str をランダムなテキスト文字列に変換します。 "百台 五十台 十台" .その後 REPLACE機能 を置き換えるために使用されます。 車 このランダムな文字列の一部を 自転車 , 1 の位置から置換を開始するために使用されます。 1 この文字列の最後の 1 は出現回数をカウントするためのものです。 1 をカウント数として定義しています。 車 のみです。 最後に、この新しいテキスト文字列を update_str とメッセージボックス付き( MsgBox ) の結果を見ることができます。
➤ プレス F5 .
その後、a メッセージボックス が新しいテキストで表示されます 自転車 において 一位 の 車 だけです。
➤ 最初の2つのインスタンスを置き換えるために 車 をもって 自転車 は、次のコードを使用してください。
Sub substitution_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "百台 五十台 十台" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1, 2) MsgBox updated_str End Sub
これです。 2 の最初の2つのインスタンスを置き換えるためのカウント番号として使用されます。 車 をもって 自転車 .
コードを実行すると、最初の2つのテキストが置き換わります。 車 をもって 自転車 .
➤ 次のコードを適用して、テキストのインスタンスをすべて置き換えます。 車 .
Sub substitution_of_text_2() Dim full_txt_str, updated_str As String full_txt_str = "百台 五十台 十台" updated_str = Replace(full_txt_str, "Cars", "Bicycles", 1, 3) MsgBox updated_str End Sub
ここで、最後の引数である REPLACE機能 でございます 3 を全て入れ替えたことを示す計数値である。 車 をもって 自転車 をテキスト文字列で指定します。
➤ プレス F5 .
その後、以下のとおりです。 メッセージボックス を置換されたテキストに置き換えます。 自転車 を文字列で指定します。
類似の読み物
- エクセルで文字列を改行で置換する方法(4つのスムーズな方法)
- Excel VBA:Word文書内の文字列の検索と置換を行う方法
- Excelで特定の文字以降のテキストを置換する方法(3つの方法)
- Excelで条件に応じてセルの文字列を置換する(5つの簡単な方法)
Method-03:InputBoxでランダムな文字列のテキストを置換する
ここでは、ランダムな文字列の中のあるテキストを、ユーザが定義したテキストに置き換えるために VBA 入力ボックス機能 .
ステップス :
➤フォロー Step-01 の 方法-1 .
➤ 次のコードを入力します。
Sub substitution_of_text_3() Dim full_txt_str, new_txt, updated_str As String full_txt_str = "百車五十車十車" new_txt = InputBox("Write down new text to replace") updated_str = Replace(full_txt_str, "Cars", new_txt) MsgBox updated_str End Sub
ここでは、以下のように宣言しています。 full_txt_str , new_txt そして update_str かわりに 文字列 を割り当てた上で full_txt_str をランダムなテキスト文字列に変換します。 "百台 五十台 十台" で置換されるテキストをユーザー定義入力とするには,次のようにします. 車 をランダムな文字列の中で使っています。 InputBox機能 を作成し、この値を new_txt .それから REPLACE機能 を置き換えるために使用されます。 車 このランダムな文字列の一部を new_txt 最後に、この新しいテキスト文字列を update_str とメッセージボックス付き( MsgBox ) の結果を見ることができます。
➤ プレス F5 .
その後 入力ボックス が表示されますので、新しい文字列の中に入れたいテキスト部分を入力してください。
➤タイプ 自転車 または任意のテキストを入力し よっしゃー .
最後に、新しいテキスト文字列が新しいテキストを持つ、次のような結果が得られます。 自転車 にあっては 車 .
続きを読む: Excelの数式でテキストを置換する方法(7つの簡単な方法)
Method-04:ExcelVBAで文字列の範囲のテキストを置換する
ここでは、その代用として Gメール のドメインでメールIDの一部を構成します。 新ドメイン カラムに、新しい電子メールIDを蓄積するために、新しいカラムを挿入しました。 最終メールアドレス .
ステップス :
➤フォロー Step-01 の 方法-1 .
➤ 次のコードを入力します。
Sub substitution_of_text_4() For i = 4 To 13 If InStr(1, Cells(i, 4).Value, "gmail")> 0 Then Cells(i, 6).Value = Replace(Cells(i, 4).Value, "gmail", Cells(i, 5).Value) Else Cells(i, 6).Value = ""End If Next i End Sub
ここでは FORループ から操作を実行します。 4列目 まで 13列目 .協力のもと イフテン ステートメントで、EメールIDが D列 含む 「gmail という基準があり、この基準を満たすために 「gmail の新しいドメインに置き換わります。 E列 に新しいIDを作成します。 F列 の対応するセルが空白になります。 F列 .
➤ プレス F5 .
そうすると、新しいメールIDが 最終メールアドレス の欄があります。
続きを読む: Excel VBAで列内の文字列を検索して置換する(2例)
方法05:ユーザー入力で文字列を検索し、文字列の範囲を置き換える
以下のメールIDを新しいドメインに置き換え、以前のIDの何を置き換えるかを宣言します。この方法に従って、ユーザー入力を使用することができます。
ステップス :
➤フォロー Step-01 の 方法-1 .
➤ 次のコードを入力します。
Sub substitution_of_text_5() Dim partial_text As String partial_text = Application.InputBox("Enter string to be replaced") For i = 4 To 13 If InStr(1, Cells(i, 4).Value, LCase(partial_text))> 0 Then Cells(i, 6).Value = Replace(Cells(i, 4).Value, LCase(partial_text), Cells(i, 5).Value) Else Cells(i, 6).Value = "" End If Next i End Sub
ここでは、以下のように定義しています。 部分テキスト として 文字列 を通してユーザーから与えられる文字列に割り当てました。 入力ボックス .
その後 FORループ から操作を実行します。 4列目 まで 13列目 を使用しています。 イフテン 文の電子メール ID が正しいかどうかを確認しました。 D列 含む 「gmail そして、この基準を満たすために 「gmail の新しいドメインに置き換わります。 E列 に新しいIDを作成します。 F列 の対応するセルが空白になります。 F列 .
➤ プレス F5 .
それ以降は 入力ボックス ここで、E-mail IDの範囲内で検索したい文字列を入力します(ここでは Gメール ) を押してください。 よっしゃー .
最後に、更新したメールIDを 最終メールアドレス の欄があります。
続きを読む: Excel VBAで範囲内の文字列を検索・置換する(マクロとUserForm)
プラクティス部門
自分で練習できるように 実践編 という名前のシートに、以下のようなセクションを作成します。 実践編 .自分でやってください。
結論
今回は、Excelを使って文字列を置換する方法について取り上げてみました ブイビーエー ご意見、ご質問等ございましたら、コメント欄にてお寄せください。