使用工作表。 。替换特定单元格的函数而不是整个列/行

时间:2016-07-20 06:58:17

标签: excel vba excel-vba replace

以下代码适用于替换整列中的特定值:

$data = [
    'title' => 'My new article',
    'body' => 'The text',
    'user_id' => 1,
    'comments' => [
        '_ids' => [1, 2, 3, 4]
    ]
];

但是我只需要替换特定单元格中的值(例如在单元格“D9”中作为vba循环的一部分)而不是整个列或单元格范围。

有人可以建议对上述代码进行必要的修改吗?

感谢。

3 个答案:

答案 0 :(得分:1)

替换一个单元格中的值A2:

Range("A2").Replace oldValue, newValue 

替换范围内的值:

Range("A2:A10").Replace oldValue, newValue

答案 1 :(得分:0)

如果要遍历整个D列(直到最后一行):

Option Explicit

Sub Replace_ColumnD()

Dim sht1 As Excel.Worksheet
Dim LastRow As Long
Dim lrow As Long
Dim val_new As String
Dim val_old As String


Set sht1 = ActiveWorkbook.Worksheets("Sheet1")
LastRow = sht1.Cells(sht1.Rows.Count, "D").End(xlUp).Row

For lrow = 1 To LastRow
     sht1.Cells(lrow, 4).Replace val_old, val_new
Next

End Sub

答案 2 :(得分:0)

谢谢你们。这确实很有帮助。 最后代码如下:

For i = 2 To LastRow

MyRange = MyColumnLetter & i

If....condition met:
   Worksheets("Sheet1").Range(MyRange).Replace val_Old, val_New
End If

Next