我有一张包含模板化数据的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
但我想将A
替换为B1-B5
的内容而不是文字“B1”,“B2”,...,“B5”等
答案 0 :(得分:1)
而不是
.Replace "ZIPCODE", "B1", xlPart
使用
.Replace [a1].Value, [b1].Value, xlPart
如果您只想在单元格中替换整个单词 (即如果你想用 dog 替换 cat 但是避免将 catscan 更改为 dogscan 然后构建一个空格检查在字符串之前或之后)
使用
.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
答案 1 :(得分:1)
您可以使用
引用单元格(地址)值Range("B1").value