プロが教える店舗&オフィスのセキュリティ対策術

置換するリストのシートを作成し、同じブック内のリスト以外のシートに対して
全て置換を行いたいのですがうまくいきません。
現状ではリストのシートも含めて置換してしまいます。
同じような質問をいくつか見つけて修正して使用しようと思っているのですがうまくいかなくて
ギブアップしてます。
https://oshiete.goo.ne.jp/qa/5445568.html

最終的にボタンを押したらリストにある内容で全てのシートに置換をかけたいのです。
よろしくお願いします。

A 回答 (1件)

こんばんは!



↓の画像のような配置で、置換表を作成しておくとします。
尚、↓の画像のシート名は「リスト」とします。

標準モジュールです。

Sub Sample1()
Dim i As Long, k As Long, wS As Worksheet
With Worksheets("リスト")
For k = 1 To Worksheets.Count
If Worksheets(k).Name <> .Name Then
Set wS = Worksheets(k)
For i = 2 To .Cells(Rows.Count, "A").End(xlUp).Row
wS.Cells.Replace what:=.Cells(i, "A"), replacement:=.Cells(i, "B"), lookat:=xlPart
Next i
End If
Next k
End With
MsgBox "完了"
End Sub

>最終的にボタンを押したら・・・
とありますので、「リスト」シート上にコマンドボタンを配置するのであれば
コマンドボタンのコードを↓にしてください。
(標準モジュールはそのままにしておきます)

Private Sub CommandButton1_Click()
Call Sample1
End Sub

※ セル内部分置換としています。
セル全体が対象の場合は
>・・・lookat:=xlPart

>・・・lookat:=xlWhole
に変更してください。

こんな感じではどうでしょうか?m(_ _)m
「別シートのリストから置換する方法」の回答画像1
    • good
    • 1
この回答へのお礼

おお!バッチリできました感謝です。
早い回答ありがとうございました!
参考にして勉強します~

お礼日時:2017/11/07 19:45

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A