No sirve mi función en otra hoja de excel

Mi función solo sirve en mi primera hoja que se llama "Datos de Entrada" en esta hoja están los datos que quiero buscar con Vlookup pero necesito usar mi función en el resto de hojas, la función funciona excelente en la primera hoja, pero no funciona en las demás necesito saber que debo modificar.
Public Function Inercia_Viga(AB As Integer, BB As Integer, CB As Integer) As Currency
Application.Volatile
Dim MBE As Range
Set MBE = Sheets("Datos de Entrada").Range(Cells(16 + WorksheetFunction.Max(BB, CB + 1), 2), Cells(16 + WorksheetFunction.Max(BB, CB + 1) + BB, 4))
Inercia_Viga = WorksheetFunction.VLookup(AB, MBE, 3, False)
End Function
Muchísimas gracias

1 Respuesta

Respuesta
1
Pues prueba con este cambio y me avisas, debería activarse según la hoja que estés
Public Function Inercia_Viga(AB As Integer, BB As Integer, CB As Integer) As Currency
Application.Volatile
Dim MBE As Range
Set MBE = Range(Cells(16 + WorksheetFunction.Max(BB, CB + 1), 2), Cells(16 + WorksheetFunction.Max(BB, CB + 1) + BB, 4))
Inercia_Viga = WorksheetFunction.VLookup(AB, MBE, 3, False)
End Function
No mira no me funcionó, lo que pasa es que el rango esta en la hoja "Datos de Entrada" y el resultado de ser puesto en el resto de hojas, es decir necesito que la función siempre tome los datos de la hoja "Datos de Entrada" y haga la búsqueda en esa hoja y me bote el resultado en cualquier hoja. Gracias por tu atención
Prueba con este cambio y me avisas
Public Function Inercia_Viga(AB As Integer, BB As Integer, CB As Integer) As Currency
Application.Volatile
Dim MBE As Range
Set MBE = "Datos de Entrada!" & Sheets("Datos de Entrada").Range(Cells(16 + WorksheetFunction.Max(BB, CB + 1), 2), Cells(16 + WorksheetFunction.Max(BB, CB + 1) + BB, 4))
Inercia_Viga = WorksheetFunction.VLookup(AB, MBE, 3, False)
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas