Función con dos o más resultados

07/09/2007 - 17:50 por Alfredo_espinosa | Informe spam
Quiero hacer una función personalizada que devuelva más de un valor como
resultado.

Por ejemplo:
=MyHOY()

Y que devuelva la fecha en la celda actual (como lo hace normalmente HOY) y
el dia de la semana en la celda a un lado.

¿Algún tip?

Preguntas similare

Leer las respuestas

#1 David
07/09/2007 - 21:32 | Informe spam
mmm... Desde una función, no sé. A ver si alguien nos da una idea.

Mientras, podrías probar con un procedimiento:

Sub MiHoy()
ActiveCell.Formula = "=Now()"
ActiveCell.NumberFormat = "dd/mm/yyyy;@"
ActiveCell.Offset(0, 1).Formula = "=Text(" & ActiveCell.Address &
",""dddd"")"
End Sub

Comentas si es lo que pretendías.



"Alfredo_espinosa" escribió:

Quiero hacer una función personalizada que devuelva más de un valor como
resultado.

Por ejemplo:
=MyHOY()

Y que devuelva la fecha en la celda actual (como lo hace normalmente HOY) y
el dia de la semana en la celda a un lado.

¿Algún tip?
Respuesta Responder a este mensaje
#2 Alfredo_espinosa
07/09/2007 - 22:34 | Informe spam
El resultado del procedimiento si es lo que quiero (o algo similar), pero
quiero que sea una función para poder llamarla desde una celda en una hoja.

Gracias por el ejemplo.


"David" escribió:

mmm... Desde una función, no sé. A ver si alguien nos da una idea.

Mientras, podrías probar con un procedimiento:

Sub MiHoy()
ActiveCell.Formula = "=Now()"
ActiveCell.NumberFormat = "dd/mm/yyyy;@"
ActiveCell.Offset(0, 1).Formula = "=Text(" & ActiveCell.Address &
",""dddd"")"
End Sub

Comentas si es lo que pretendías.



"Alfredo_espinosa" escribió:

> Quiero hacer una función personalizada que devuelva más de un valor como
> resultado.
>
> Por ejemplo:
> =MyHOY()
>
> Y que devuelva la fecha en la celda actual (como lo hace normalmente HOY) y
> el dia de la semana en la celda a un lado.
>
> ¿Algún tip?
Respuesta Responder a este mensaje
#3 David
08/09/2007 - 00:38 | Informe spam
Una función no puede hacer la misma tarea que un procedimiento. Tengo
entendido que un procedimiento Sub puede ejecutar acciones, pero no devolver
valores. En forma inversa, un procedimiento Function puede devolver valores,
pero no ejecutar acciones. Esto último es lo que necesitas para poder
asignar un valor a dos celdas diferentes.

La alternativa es que elabores una función matricial. En este tipo de
fórmulas puedes seleccionar varias celdas, ingresar los parámetros y pulsar
Control+Shift+Enter para generar varias respuestas simultáneamente.

Si no recibes otra propuesta, te aconsejaría replantear tu pregunta,
solicitando información para "hacer" tu propia función matricial.



"Alfredo_espinosa" escribió:

El resultado del procedimiento si es lo que quiero (o algo similar), pero
quiero que sea una función para poder llamarla desde una celda en una hoja.

Gracias por el ejemplo.


"David" escribió:

> mmm... Desde una función, no sé. A ver si alguien nos da una idea.
>
> Mientras, podrías probar con un procedimiento:
>
> Sub MiHoy()
> ActiveCell.Formula = "=Now()"
> ActiveCell.NumberFormat = "dd/mm/yyyy;@"
> ActiveCell.Offset(0, 1).Formula = "=Text(" & ActiveCell.Address &
> ",""dddd"")"
> End Sub
>
> Comentas si es lo que pretendías.
>
>
>
> "Alfredo_espinosa" escribió:
>
> > Quiero hacer una función personalizada que devuelva más de un valor como
> > resultado.
> >
> > Por ejemplo:
> > =MyHOY()
> >
> > Y que devuelva la fecha en la celda actual (como lo hace normalmente HOY) y
> > el dia de la semana en la celda a un lado.
> >
> > ¿Algún tip?
Respuesta Responder a este mensaje
#4 julian-vlc-sp
08/09/2007 - 11:27 | Informe spam
¡Importante!: Colabora con el grupo.Contesta a este mensaje
y dinos si te sirvió o no la respuesta dada. Muchas gracias.

Asumiendo que lo que necesitas no sea exactamente lo que expones y que hayas
'inventado' tus necesidades para hacer la consulta, mi propuestas es:

Suponiendo que en A1 quieras poner

=MyHOY()

para obtener 08/09/2007

y que en B1 quieras tener

sábado

yo haría lo siguiente:

en A1 pondría

=HOY()

en B1 pondría

¡

a B1 le daría el formato

dddd


SALUDOS.
Julián-Valencia-España
http://ijulian.iespana.es/


"Alfredo_espinosa" escribió en
el mensaje news:
Quiero hacer una función personalizada que devuelva más de un valor como
resultado.

Por ejemplo:
=MyHOY()

Y que devuelva la fecha en la celda actual (como lo hace normalmente HOY)
y
el dia de la semana en la celda a un lado.

¿Algún tip?
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida