「これはヤバかったな」という遅刻エピソード

VBAのreplaceを使って処理を行っているのですが、今後置換対象が増えることもあり、エクセルの特定のシートの特定の列に「置換対象」と「置換後」欄を作成したいと思っております。
(今までreplaceで入れていた  .Replace what:="あ", Replacement:="い"を.Replace what:="置換対象欄に書いてある言葉1", Replacement:="置換後欄に書いてある言葉1"という風にしたい)


説明が悪いとは思いますが、やり方を教えてください。

A 回答 (2件)

こんばんは!



Sheet2のA1セル以降に「置換対象」、B1セル以降に「置換後」の表を作成しておき、
Sheet1のすべてのセルを対象とし、置換するとします。

Sub Sample1()
Dim i As Long
With Worksheets("Sheet2")
For i = 1 To .Cells(Rows.Count, "A").End(xlUp).Row
Worksheets("Sheet1").Cells.Replace what:=.Cells(i, "A"), replacement:=.Cells(i, "B"), lookat:=xlPart
Next i
End With
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 0

置換対象が X列(24列目)、置換後が Y列(25列目) に有り、タイトル行が有りリストが2行目から始まるとしたら以下のような感じではいかがですか?



行 = 2
Do While Cells(行, 24).Value <> ""
.Replace what:=Cells(行, 24).Value, Replacement:=Cells(行, 25).Value
行 = 行 + 1
Loop
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!