Excelのセルを一括で置換する方法

このQ&Aのポイント
  • Excelの置換機能を使用して、膨大な数のセルを一括で置換する方法を教えてください。
  • 置換前の文字列と置換後の文字列が複数のセルに共通して含まれている場合、Excelの置換機能では一括で置換することができます。
  • 具体的には、置換前の文字列を検索し、置換後の文字列に一括で変換することができます。
回答を見る
  • ベストアンサー

Excelの置換で教えてください。

Excelの置換機能を使用し、以下のように設定して置換を行いました。 検索前の文字列:80,80,VALUE(F7) 置換後の文字列:80,80,VALUE(MID(F7,2,9)) 結果として以下の様に置き換わりました。 =IFERROR(IF(F7<>"",IF(LEFT(F7,1)="*",IF(VALUE(MID(F7,2,9))>80,80,VALUE(F7)),IF(VALUE(F7)>60,60,VALUE(F7))),IF(E7<>"",VALUE(E7),"")),"") ↓ =IFERROR(IF(F7<>"",IF(LEFT(F7,1)="*",IF(VALUE(MID(F7,2,9))>80,80,VALUE(MID(F7,2,9)),IF(VALUE(F7)>60,60,VALUE(F7))),IF(E7<>"",VALUE(E7),"")),"") このセル1つのみであればこれで完了ですが、 検索前の文字列:80,80,VALUE(F7) 置換後の文字列:80,80,VALUE(MID(F7,2,9)) この★F7★の部分が異なる内容のセルが膨大にあるので 一括で置換できる方法を探しています。 いい方法がありましたら教えてください。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

エクセルのオプションの数式欄(2003迄を使っているときは表示タブ)で「R1C1形式を使用する」にチェックを入れます。 ご質問の肝心の「F7」の記述が,どのセルの数式も「同じ記述内容」に書き換わりますので,置換して下さい。 変更前の式の状態でR1C1に変えたときのF7の数式 と 今のA1の状態で目的の数式に書き換えた後,R1C1に変えた数式 をそれぞれメモ帳にコピーしてよく見比べ,どこをどう置換したら目的の式になるか間違えないように拾って下さい。 置換操作後に表示を戻し,意図通りに置換できたか再確認します。

kamonekamone
質問者

お礼

ぬぉぉぉ出来ました。 ありがとうございます。 ここまで簡単にできると思いませんでした。

関連するQ&A

  • エクセル 複数の置換

    おはようございます。たとえば、以下の画像のようにアルファベットが並んでいたとします。そのうち、AとBとCの3つをFに置換したいとすればどのようにすればいいのでしょうか。検索と選択→置換→検索する文字列→A→置換後の文字列→F これを同じようにBもCもすればできますが、大量の検索する文字がある場合、一つ一つ打っていくのがたいへんなのですが何かいい方法はありますか。ご回答よろしくお願いします。

  • エクセル2003での置換について教えてください。

    エクセル2003での置換について教えてください。 こんにちは いつもお世話になっています エクセル2003での置換について教えてください。 特定の文字列以降の文字列を(特定文字列自身も含めて)削除したいのです。  特定の文字列は二つあります。【@】と【変化】です(【】も含みます)。  この二つの文字列はバラバラに出てきます。一方だけがでてくるセル、両方出てくるセル、両方出てこないセル、があるという意味です。  「*」を各特定文字の後ろに付けて、置換機能で削除していますが、二つの文字列に対して別々にやっています。 これを一度で置換して削除する方法を教えてください。  よろしくお願いします。

  • エクセルで日付の文字列のシリアル値化

    E5セルに 2020年7月1日~2021年6月1日 という文字列があります。 AFセルに =IF(E5="","",LEFT(E5,FIND("日",E5))*1) AG5セルに =IF(E5="","",MID(E5,FIND("~",E5)+1,11)*1) として日付をシリアル値で取り出しています。 このエクセルを他の人にわたしたのですが、その方がE5に 2020年8月1日~2021年9月1日 という文字列をコピペしたところ AF5もAG5もVALUEエラーになってしまいました。 最初、入力した文字列の形式が誤っているのではと思って、メールでファイルをおくってもらったのですが、入力形式に問題はなく、VALUEエラーが出ていました。 わたしの端末で、そのセルにカーソルをあて、エンターキーを押すと日付に変わりました。 どのような原因でこうなるのでしょうか? VALUEエラーが出ないようにするのはどうすればいいのでしょうか?

  • エクセルの置換について

    セルに次のような数式が入っているときに数式の部分だけ置換する方法がありましたらご指導お願いします。 [B1] =SUM(A1+A2) →置換後 =A1+A2 [B2] =SUM(A10+A20) →置換後 =A10+A20 [B3] =SUM(A100+A200) →置換後 =A100+A200 置換する方法は「編集」-「置換」で 検索する文字列と置換後の文字列が分かりません。 SUM(で置換をかけると数式エラーで置換が出来ず SUM(*)で置換をかけると当然ですが全て消えます。 お手数ですが宜しくお願致します。

  • ワードの置換ですが

    Cells(1, "A") = Mid(Cells(1, "B"), 1, 1) Cells(2, "A") = Mid(Cells(1, "B"), 2, 1) Cells(3, "A") = Mid(Cells(1, "B"), 3, 1) Cells(4, "A") = Mid(Cells(1, "B"), 4, 1) 上記の文字列を以下に置換したいのですが。 Cells(1, "A") = "" Cells(2, "A") = "" Cells(3, "A") = "" Cells(4, "A") = "" 「検索と置換」で「ワイルドカードを使用する」にチェックを入れて、「検索する文字列」に Mid*1) を指定したのですが、マッチングしません。 なぜマッチングしないのでしょうか? 

  • エクセル 置換後の文字列について

    エクセル2003です 置換後の文字列について質問させてください 特定のセルに文字を入力し 例 C100に(9月)等 検索と置換にて 置換後の文字列を C100のテキストに 置換したいのですが 入力時にC100を選択する方法がわかりません  よろしくお願い致します

  • 置換について

    エクセルで、重要な語句に対して部分的に色付けされた文章が記載されたセルがあるとします。 そのセル内の文字列を、ctrl+FやReplace関数を使って置換をかけた場合、色付けした文字列がすべて黒に変わってしまいます。 置換対象文字列以外は、置換前の状態のまましたいのですが、どなたかその方法についてご存知の方いらっしゃらないでしょうか? ぜひ、ご教授願います。

  • Excelの置換がうまく出来ません。

     Excelである文字列を検索しようとすると、ちゃんと検索できるのですが、それを別の文字列に「置換」しようとすると「一致するデータが見つかりません」のメッセージが出て置換できません。「一致するデータ」がちゃんと存在するにもかかわらずにです。  ところが「すべて置換」にするとちゃんとすべてその文字列が指定の文字列に置換出来てしまいます。  即ち、ちゃんと置換すべき文字列が存在するにもかかわらず「置換」だけが実行されないのです。  これってどうゆうわけでしょうか?  私としては、「すべて置換」ではなく、一つ一つ確認しながら文字列の置換を行いたいのですが・・・私のやり方が悪いのでしょうか?  尚、ここで言う「文字列」とは狭い意味のそれではなく、数値・記号を含む全ての文字と言う意味です。

  • エクセル(置換)

    文字の置換をしたいのですが検索→置換ができません。 セルの書式設定でも上手くできませんでした。 どのような方法がありますか? 表には空欄もあります。 置換したいのはそれぞれの縦列です。 置換前の文字(数字)は異なっています。 よろしくお願いします。

  • Excelで置換した文字に色をつけたい

    よろしくお願いします Excelで、「対象シート」のB列を参照して、 「置換リスト」シートの一覧のC列の文字列をE列の文字列に置換するようにしています。 「対象シート」のA列には置換前のデータも入っているので、 「対象シート」のA列、B列それぞれの置換前、置換後の文字列に色をつけたいと思っています。 どの文字がどの文字に置換されたかを比較するためです。 置換後のB列のみ下記式で色をつけられたのですが、 該当文字が含まれる、セル内全部の文字の色が変わってしまいました。 該当文字だけの色を変えるにはどうすればよいでしょうか。 また、「置換リスト」シートのC列にある場は「対象シート」のA列の該当文字のみを赤くする方法も教えていただけないでしょうか。 Sub list置換_Click() Dim list_sheet As Worksheet Dim chg_sheet As Worksheet 'こっちは置換する元の文字と置換文字のリスト Set list_sheet = Worksheets("置換リスト") 'こっちは一括置換したい対象のシート Set chg_sheet = Worksheets("対象シート") cnt = list_sheet.Range("c4").CurrentRegion.Rows.Count For i = 4 To cnt srcword = list_sheet.Cells(i, "C").Value repword = list_sheet.Cells(i, "E").Value With Application.ReplaceFormat.Font .Subscript = False .Color = 255 .TintAndShade = 0 End With Columns("B:B").Replace What:=srcword, Replacement:=repword, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=True Next i End Sub よろしくお願いいたします。

専門家に質問してみよう