我是新来的,我在问题中提前道歉并不清楚...经过一些研究后我找不到答案...
我正在寻找一种方法来浏览列“R”的所有单元格,如果给定行上的一个单元格包含“Y”,则列“W”,“X”和“列”处的单元格值Y“将采用与”F“,”G“和”H“列相同的值(始终在同一行)。
目标是有一个按钮来执行VBA代码以执行此操作(而不是一直复制/粘贴)。
非常感谢您的帮助。
一个可怜的无知但有动力的VBA初学者......
答案 0 :(得分:0)
这是VBA,它会做你想要的。它利用替换操作是使用Resize
亮点
InStr
检查“Y”。Resize
一步完成了所有操作。代码:
Sub ReplaceValuesBasedOnColumn()
Dim rng_search As Range
Dim rng_cell As Range
'start on column R, assume correct sheet is open
Set rng_search = Range("R:R")
For Each rng_cell In Intersect(rng_search, rng_search.Parent.UsedRange)
'search for a Y, case sensitive
If InStr(rng_cell, "Y") > 0 Then
'update the columns as desired
'takes advantage of cells being next to each other
Range("W" & rng_cell.Row).Resize(1, 3).Value = Range("F" & rng_cell.Row).Resize(1, 3).Value
End If
Next rng_cell
End Sub
我在我的最后测试了它,它运行起来,在运行后生成以下内容: