Macro para activar una hoja en una función propia
Hola!
He creado una función propia que se visualiza así =ValCuali(N5, O5, P5)
Estoy manejando 2 hojas, La primera tiene una serie de combinaciones y los resultados de estas combinaciones.
En la segunda voy ingresando a las celdas valores y donde necesite el resultado de combinar coloco la fórmula que les indique =ValCuali(N5, O5, P5)
Mi problema es que cuando llamo la función desde otra hoja diferente a la de combinaciones no está activando la hoja y por lo tanto no encuentra los resultados.
Por favor ayuda!
Dentro de VB en un modulo coloque la siguiente función
Option Explicit
Const P = 1 'Columna A
Const I = 2 'Columa B
Const A = 3 ' Columna C
Const ValCual = 4 'Columna D correspondiente al valor resultado
Public Function ValCuali(Pp, Ii, Aa)
´recibe de entrada los valores de cada respuesta
Dim colxls As Integer
Dim rowxls As Integer
Dim Ufil As Integer
Sheets("Combinaciones").Select
Ufil = Range("A65536").End(xlUp).Row 'sera el valor de la ultima fila
'Recorrer la hoja de combinaciones hasta encontrar los valores igual a las entradas de función
For rowxls = 2 To Ufil 'Empieza a leer por fila
If (Columns(P).Rows(rowxls) = Pp) And (Columns(I).Rows(rowxls) = Is) And (Columns(A).Rows(rowxls) = Aa) Then
ValCuali = Columns(ValCual).Rows(rowxls) 'el valor de la funcion
Exit Function
End If
Next rowxls
End Function
He creado una función propia que se visualiza así =ValCuali(N5, O5, P5)
Estoy manejando 2 hojas, La primera tiene una serie de combinaciones y los resultados de estas combinaciones.
En la segunda voy ingresando a las celdas valores y donde necesite el resultado de combinar coloco la fórmula que les indique =ValCuali(N5, O5, P5)
Mi problema es que cuando llamo la función desde otra hoja diferente a la de combinaciones no está activando la hoja y por lo tanto no encuentra los resultados.
Por favor ayuda!
Dentro de VB en un modulo coloque la siguiente función
Option Explicit
Const P = 1 'Columna A
Const I = 2 'Columa B
Const A = 3 ' Columna C
Const ValCual = 4 'Columna D correspondiente al valor resultado
Public Function ValCuali(Pp, Ii, Aa)
´recibe de entrada los valores de cada respuesta
Dim colxls As Integer
Dim rowxls As Integer
Dim Ufil As Integer
Sheets("Combinaciones").Select
Ufil = Range("A65536").End(xlUp).Row 'sera el valor de la ultima fila
'Recorrer la hoja de combinaciones hasta encontrar los valores igual a las entradas de función
For rowxls = 2 To Ufil 'Empieza a leer por fila
If (Columns(P).Rows(rowxls) = Pp) And (Columns(I).Rows(rowxls) = Is) And (Columns(A).Rows(rowxls) = Aa) Then
ValCuali = Columns(ValCual).Rows(rowxls) 'el valor de la funcion
Exit Function
End If
Next rowxls
End Function
1 Respuesta
Respuesta de Carlos soloffice
1