Como usar BUSCARV para encontrar valores en una celda con varios caracteres

Tengo una columna con números.

Deseo encontrar estos números en otro libro y traer el dato que tiene la columna posterior. El problema es que dicho numero esta dentro de otros caracteres.

Es una especie de buscarv pero en el libro #2 (de donde voy a traer el dato) el valor buscado no esta limpio sino inmerso dentro de una cadena de caracteres!

1 respuesta

Respuesta
2

Te anexo la macro, deberás ajustar la macro con los nombres de archivo, hojas y columnas

En la macro van unos comentarios para que sepas qué datos debes completar

Sub Buscar_Numero()
'Por.Dante Amor
    Set l1 = ThisWorkbook
    Set h1 = l1.Sheets("Hoja3")             'nombre de la hoja con series
    '
    Set l2 = Workbooks("otro libro.xlsx")   'nombre del otro libro
    Set h2 = l2.Sheets("Hoja1")             'nombre de la hoja del otro libro
    '
    For i = 2 To h1.Range("C" & Rows.Count).End(xlUp).Row
        'columna donde se va a buscar
        Set b = h2.Columns("D").Find(h1.Cells(i, "C"), lookat:=xlPart)
        If Not b Is Nothing Then
            h1.Cells(i, "D") = h2.Cells(b.Row, "E") 'columna posterior
        End If
    Next
    MsgBox "fin"
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Hola Dante

Definitivamente no pude cuadrar el código :s

Te envío dos fotos. La idea es que en la columna B del libro "SERIES" quede la información que estoy buscando.

Lo que busco es que cada código sea buscado en la columna E del libro "GLOSA" y me traiga el dato de la columna F también del libro "GLOSA".

Este es mi libro"SERIES"

Y este es mi libr "GLOSA"

Infinitas gracias por la atención y la ayuda.

Ambos tienen una sola hoja de nombre (Hoja1)

Te anexo la macro actualizada.

Pon la macro en tu libro "SERIES". Los 2 libros deben estar abiertos.

Sub Buscar_Numero()
'Por.Dante Amor
    Set l1 = ThisWorkbook
    Set h1 = l1.Sheets("Hoja1")             'nombre de la hoja con series
    '
    Set l2 = Workbooks("GLOSA.xlsx")        'nombre del otro libro
    Set h2 = l2.Sheets("Hoja1")             'nombre de la hoja del otro libro
    '
    For i = 2 To h1.Range("A" & Rows.Count).End(xlUp).Row
        Set b = h2.Columns("E").Find(h1.Cells(i, "A"), lookat:=xlPart)
        If Not b Is Nothing Then
            h1.Cells(i, "B") = h2.Cells(b.Row, "F")
        End If
    Next
    MsgBox "fin"
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas