Macro para función Vlookup

Hola buen día.

Hace poco me ayudaste con una macro para abrir una archivo de excel de una ventana de navegación, y quería saber si me podrías ayudar indicándome la manera correcta para realizar lo siguiente.

Tengo en la variable de la ayuda que me prestaste la ruta de un archivo de excel, y quiero realizar en el archivo en donde tengo la macro en una celda específica una función vlookup para que busque en el archivo que escogí determinada información. Estoy usando el siguiente código, pero crea conflicto con el código con el cual me ayudaste:

If OptionButton1.Value = True Then
ruta = ThisWorkbook.Path
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Seleccione archivo de excel"
.Filters.Clear
.Filters.Add "Todos", "*.*"
.Filters.Add "Archivo xls", "*.xls*"
.FilterIndex = 2
.AllowMultiSelect = False
.InitialFileName = ruta
'.Show
If .Show Then
arch = .SelectedItems.Item(1)
''Workbooks.Open arch
End If


Range("AR19").Select
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-42]," & " ' " & arch & "Sheet1'!R3C2:R" & Cells(1, 2).Value & "C3,2,0)"
Range("AR19").Select
Selection.AutoFill Destination:=Range("AR19:AR" & Cells(7, 3)), Type:=xlFillDefault

End If

Nota: En el archivo que voy a seleccionar, hay una celda en donde cuenta hasta donde debe ir la función Vlookup y es por esto que en la formula se encuentra Cells(1, 2).Value que es donde tengo el valor de hasta donde debe ir la función de búsqueda.

El código tuyo está funcionando perfectamente, pero cuando lo complemento con lo que hice en la parte inferior, no funciona adecuadamente y se abre la ventana de navegación constantemente para seleccionar nuevamente el archivo a abrir, y la función de búsqueda que se escribe en la celda queda de la siguiente manera:

=VLOOKUP(B19;'C:\Users\huawei\Desktop\[ARCHIVO PARA CARGAR.xlsmSheet1]ARCHIVO PARA CARGAR'!$B$3:$C19;2;0) El valor al final del Vlookup no debería ser 19 ya que el valor que tengo en Cells(1, 2).Value es 9. También necesito que este número quede anclado es decir con el signo $ para que la tabla no cambie.

Te agradecería me indicaras cuál es el error que estoy cometiendo, ya que no se exactamente en donde está el problema.

Gracias por la atención prestada,

Cordialmente,


Fabio Urrea Ballesteros.

1 Respuesta

Respuesta
1

Me parece que te falta el libro y la hoja:

Prueba con esto

ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-42]," & " ' " & arch & "Sheet1'!R3C2:R" & _
Workbooks("nombredetulibro").Sheets("nombredetuhoja").Cells(1, 2).Value & "C3,2,0)"
Range("AR19").Select

Saludos. DAM

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas