Com base no meu entendimento da sua pergunta, estou sugerindo uma macro VBA para automatizar essa tarefa. Eu suponho que você está procurando pelo número 4 real e não pelo caractere 4. Então, se ele é 44, ele deve ser ignorado e não tentado ser substituído.
Na planilha, pressione ALT + F11 para acessar o VBA Editor. No menu Inserir , insira um Módulo . Clique duas vezes no nome do módulo no painel esquerdo para acessar o editor de código. Agora cole o seguinte código nele.
Sub Replace4()
Dim MyRange As Range
Dim RowCount As Long
Dim ColCount As Integer
Dim i, j, k
Const Replaced = 0
Set MyRange = Range("B2:F12")
RowCount = MyRange.Rows.Count
ColCount = MyRange.Columns.Count
For i = 1 To RowCount
If MyRange.Columns(1).Cells(i) = 18 Then
For j = 2 To ColCount
If MyRange.Columns(j).Cells(i) = 4 Then
MyRange.Columns(j).Cells(i).Value = Replaced
End If
Next j
End If
Next i
End Sub
Observe que você deve definir a constante substituída (consulte Const Replaced = 0
) como o valor pretendido e especificar seu intervalo na linha Set MyRange = Range("B2:F12")
Assegure-se de que a primeira coluna desse intervalo seja de fato as colunas nas quais você está verificando a presença de 18.
Salve a planilha do Excel como xlsm para o Excel 2007 e acima (planilha Macro habilitada).
Agora, na planilha, pressione ALT + F8 para acessar a caixa de diálogo Macro e execute essa macro chamada Replace4