Fórmula en función excel

Buen día.
Quisiera saber si me puede apoyar en la siguiente duda, estoy construyendo una función de tal manera que me capture dos datos, primero de una lista desplegable los nombres de las hojas requeridas, y segundo la celda deseada, de tal forma que pueda definir como una variable POR la hoja, para luego armar una expresión con esta información y ejecutarla como fórmula. El problema existe cuando construyo la expresión y no encuentro la mane de ejecutarla y retornar el valor obtenido.
Function Traer(Celda As Variant) As Variant
Dim Hoja As Variant
Dim Expresion As Variant
Hoja = Range("H5").Value
Expresion = "='" & Hoja & "'!" & Celda
Traer = ........
End Function
Respuesta
1
Mmm veamos yo lo haría así:
en donde el argumento celda debe ser un string
Function Traer(ByRef Celda As String)
Dim Hoja As Variant
Dim Expresion As Variant
Hoja = Range("H5").Value
Expresion = Sheets(Hoja).Range(Celda)
Traer = Expresion
End Function
la llamada :
=Traer("D4")
Te devuelve el contenido de la celda D4 de la hoja que indiques en el rango H5 ( ese también debe ser un string) por que llamas por nombre de la hoja ejemplo en H5 dice Hoja2
Entonces la llamada traería lo que tenga la celda D4 de la hoja 2
Si te sirve CIERRA la pregunta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas