Como buscar por nombre en excel

Lo que busco es armar una macro que me llame el código de cada cuenta

1 Respuesta

Respuesta
1

Viendo tu hoja entiendo que podrías utilizar fórmula aquí en lugar de código.

Cuando se necesita obtener resultado a la izquierda del dato buscado necesitas 2 funciones: INDICE y COINCIDIR.

En la imagen marqué de azul la fórmula que te devuelve los códigos. Y en rojo una fórmula ampliada que contempla posible error de nombre no encontrado. Allí podés dejar un mensaje, 0 y vacío como en mi ejemplo.

* Más ejemplos de estas y tantas otras funciones en mi Manual Excel. Desde la imagen podés leer otras notas acerca de este ejemplo.

Sdos y no olvides valorar la respuesta.

Elsa

Me gustaría que solo me aparezca el dato sin la fórmula, como la ingresaría en VBA.

La fórmula es esta:

"=IFERROR(INDEX(Hoja3!C[-8],MATCH(RC[-8],Hoja3!C[-7],0)),""-"")"

y para meterla en VBA 

On Error Resume Next
Valor = Application.WorksheetFunction.IFERROR(INDEX(Hoja3.Range("C2"),

Te dejo las instrucciones. Lo ideal sería que las dejes en tu código anterior, fila por fila y no ejecutar un nuevo bucle... Y una vez finalizado el pase agregar las líneas del With... End with para quitar la fórmula y dejar solo el resultado.

Sub CodigoCorrespondienteCuenta()
Dim j As Long
For j = 7 To 22
    Sheets("Hoja2").Cells(j, 8).FormulaR1C1 = _
        "=IFERROR(INDEX(Hoja3!C[-7],MATCH(RC[-7],Hoja3!C[-6],0)),"""")"
Next j
With Range("H7:H22")
    .Copy
    .PasteSpecial xlPasteValues
End With
Application.CutCopyMode = False
End Sub

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas