3

テンプレート化されたデータを含む Excel シートがあります。ドキュメントの残りの部分でA1:A5入力した単語で単語の出現を置き換えられるようにしたいと考えています。B1:B5

今、私はこれをやめています(そして私はあまり知りませんVBA):

Sub UpdatePartial()
With ActiveSheet.UsedRange
.Replace "ZIPCODE", "B1", xlPart
.Replace "NAME", "B2", xlPart
.Replace "CITY", "B3", xlPart
.Replace "STATE", "B4", xlPart
.Replace "PHONE", "B5", xlPart
End With
End Sub

しかし、リテラルテキスト"B1"、"B2"、...、 "B5"などAの代わりに s を内容に置き換えたいと思いますB1-B5

4

2 に答える 2

1

それよりも

.Replace "ZIPCODE", "B1", xlPart
使用する
.Replace [a1].Value, [b1].Value, xlPart

セル内の単語全体のみを置き換えたい場合 (つまり、catdogに置き換えたいが、 catscandogscanに変更したくない場合は、文字列の前後にスペース チェックを組み込みます)。

使用する
.Replace " " & [a1].Value, " " & [b1].Value, xlPart
.Replace [a1].Value & " ", [b1].Value & " ", xlPart

更新された質問

Sub UpdatePartial()
    Dim rng1 As Range
    ActiveSheet.UsedRange
    Set rng1 = Intersect(ActiveSheet.UsedRange, Range(Cells(6, "a"), Cells(ActiveSheet.UsedRange.Rows.Count, ActiveSheet.UsedRange.Columns.Count)))
    With rng1
        .Replace [a1].Value, [b1].Value, xlPart
    End With
End Sub
于 2012-11-17T01:20:21.987 に答える
1

でセル(アドレス)値を参照できます

Range("B1").value
于 2012-11-17T01:22:16.777 に答える