Ayuda con funcion
Publicado por ariel (4 intervenciones) el 09/03/2007 00:17:00
Espero que alguien me pueda ayudar porque me da errores y no la puedo hacer funcionar.
Lo que quiero hacer es crear una funcion que pueda utilizar ingresandole los parametros desde una celda.
Por ej =hacer(F1,R5) Donde F1 contiene el nombre de la hoja donde quiero buscar y R5 el dato que quiero hallar.
La idea es que la funcion hacer de por valor lo que contiene la celda de la derecha de la cual estoy buscardo el dato. Es decir el dato que busco esta en A1 quiero que en la celda que escribi =hacer(F1,R5) me mustre el valor de B1. (buscando solo en la fila A en este caso, hasta que encuentre una celda vacia).
Function hacer(hoja As String, datobuscado as string) As String
Worksheets("hoja").Activate
Range("a1").Select
Do While ActiveCell <> Empty
If ActiveCell.Value = datobuscado Then
ActiveCell.Offset(0, 1).Select
prueba = ActiveCell.Value
ActiveCell.Offset(0, -1).Select
ActiveCell.Offset(1, 0).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
hacer = prueba
End Function
Lo que quiero hacer es crear una funcion que pueda utilizar ingresandole los parametros desde una celda.
Por ej =hacer(F1,R5) Donde F1 contiene el nombre de la hoja donde quiero buscar y R5 el dato que quiero hallar.
La idea es que la funcion hacer de por valor lo que contiene la celda de la derecha de la cual estoy buscardo el dato. Es decir el dato que busco esta en A1 quiero que en la celda que escribi =hacer(F1,R5) me mustre el valor de B1. (buscando solo en la fila A en este caso, hasta que encuentre una celda vacia).
Function hacer(hoja As String, datobuscado as string) As String
Worksheets("hoja").Activate
Range("a1").Select
Do While ActiveCell <> Empty
If ActiveCell.Value = datobuscado Then
ActiveCell.Offset(0, 1).Select
prueba = ActiveCell.Value
ActiveCell.Offset(0, -1).Select
ActiveCell.Offset(1, 0).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
hacer = prueba
End Function
Valora esta pregunta


0