Inquietud con macro para asignar valores en macro

Hace un par de meses me ayudaste con esta macro:

Sub reincersion()
'coding by Cecilio perez M
    With [A1]
    If .Offset(0) = Empty Then Exit Sub
    c = .End(xlDown).Row
    End With
 For i = 1 To c
 If Not IsEmpty(Cells(i, 1)) Then
    Cells(i, 1).Offset(0, 1).Value = Cells(i, 1) & "  " & "Valorainsertar"
  End If
  Next
    MsgBox "Fin"
End Sub

Funciona perfecto para insertar los valores. Me puedes ayudar por fa en que se inserte en vez de el Concatenar una formula tipo SI, la formula seria: =IF(A1=1;"Valor1";IF(A1=2;"Valor2";"Valor3"))

Quedo atento y mil gracias por toda tu ayuda.

Te relaciono el link de la macro que me ayudaste hacer hace un par de meses:

Macro para insertar un valor en una celda de excel

1 Respuesta

Respuesta
1

A ver adapta a tus necesidades, en este caso, supuse que los datos inician en A11 y la fórmula lo inserte en la columna "G",

Sub reto()
'coding by Cecilio perez M
    With [A11]
        If .Offset(0) = Empty Then Exit Sub
        c = .End(xlDown).Row
    End With
    For I = 11 To c
        If Not IsEmpty(Cells(I, 1)) Then
            Cells(I, "g").FormulaR1C1 = "=IF(RC[-6]=1,""Valor1"",IF(RC[-6]=2,""valor2"",""valor3""))"
        End If
    Next
    MsgBox "Fin"
End Sub

Ahora que si necesitas la fórmula en la columna "B" entonces sería así

Sub reto()
'coding by Cecilio perez M
    With [A11]
    If .Offset(0) = Empty Then Exit Sub
    c = .End(xlDown).Row
    End With
 For I = 11 To c
 If Not IsEmpty(Cells(I, 1)) Then
    Cells(I, "B").FormulaR1C1 = "=IF(RC[-1]=1,""Valor1"",IF(RC[-1]=2,""valor2"",""valor3""))"
  End If
  Next
    MsgBox "Fin"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas