Visual Basic - VLOOKUP

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

VLOOKUP

Publicado por Luis Fernando (1 intervención) el 19/07/2023 19:28:06
Buenas tardes

Alguien me puede indicar que me falta para que este buscarv se active cuando digite en la celda el resto de referencias , ya que actualmente me arroja solo el primer registro ingresado y no ejecuta mas el buscarv con el resto de ítems de la columna

Sub Vlook1()
' Vlook1 Macro
Range("D3").Select
If Range("c3").Value = 0 Or Range("c3").Value = "" Or Range("c3").Value = Empty Then
Exit Sub
Else
Range("D3").Select
ActiveCell.FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-1],'Base Pedido Almacen'!R[-1]C[-1]:R58C4,2,0),0)"
End If

End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.259
Plata
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

VLOOKUP

Publicado por Antoni Masana (558 intervenciones) el 19/07/2023 21:38:39
Esta macro solo hace una cosa, poner una formula en la celda C3 cuando hay datos en la celda C3 no este vacia

Hay dos formulas basicámente hacen lo mismo poner una formula en C3 bajo unas condiciones que no acabo de entender que se pretende validar.

Tampoco queda claro que es lo que quieres hacer, cuando se debe ejecutar la macro, manualmente o al rellenar una celda.

Creo que la solución es muy simple, copias esto:

1
=SI.ERROR(BUSCARV(C3;'Base Pedido Almacen'!$C$2:$D$58;2;0);0)

En la celda C3 y arrastras hacia abajo y solucionado.

1
2
3
4
5
6
7
8
9
Sub Vlook1()
    Range("D3").Select
    If Range("c3").Value = 0 Or Range("c3").Value = "" Or Range("c3").Value = Empty Then
        Exit Sub
    Else
        Range("D3").Select
        ActiveCell.FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-1],'Base Pedido Almacen'!R[-1]C[-1]:R58C4,2,0),0)"
    End If
End Sub


1
2
3
4
5
6
7
8
9
10
11
Sub Vlook1()
 
' Vlook1 Macro
 
    Range("D3").Select
    If Range("c3").Value = 0 Or Range("c3").Value = "" Or Range("c3").Value = Empty Then
    Else
        Range("D3").Select
        ActiveCell.FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-1],'Base Pedido Almacen'!R[-1]C[-1]:R58C4,2,0),0)"
    End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar