mostrar calendario en excel

14/03/2006 - 11:37 por mariana | Informe spam
quiero que mi hoja muestre el calendario como aparece en outlook (cuando vas
a modificar una fecha) y poder seleccionar un día en concreto cada vez.
He intentado por cuadro combinado, pero al tratarse de lista, sólo me coge
los lunes en mi lista de meses con sus días cuando mi lista es hacia abajo,
si coloco los meses de izqda a dcha me coge toda la línea
En ninguno de los dos casos me permite seleccionar un sólo día, sino la fila
completa ¿se puede hacer? ¿COMO?
Por otro lado ¿se puede hacer que en un cuadro combinado no se pueda
escribir, y sólo te permita seleccionar en la lista del desplegable?
mariana

Preguntas similare

Leer las respuestas

#1 David
14/03/2006 - 22:02 | Informe spam
Si es en una cantidad limitada de celdas, prueba hacer lo siguiente:

1. En Ver - Barra de herramientas, activa "Cuadro de controles".
2. Haz clic en el botón "Más controles" y luego en "Control calendario".
3. Dibujas el control en tu hoja electrónica, y luego con clic derecho -
Propiedades, buscas la propiedad "Linked Cell", y escribes la dirección de la
celda que vas a vincular al calendario.}
4. Haces clic en el botón "Salir del modo diseño" y pruebas el calendario.


"mariana" escribió:

quiero que mi hoja muestre el calendario como aparece en outlook (cuando vas
a modificar una fecha) y poder seleccionar un día en concreto cada vez.
He intentado por cuadro combinado, pero al tratarse de lista, sólo me coge
los lunes en mi lista de meses con sus días cuando mi lista es hacia abajo,
si coloco los meses de izqda a dcha me coge toda la línea
En ninguno de los dos casos me permite seleccionar un sólo día, sino la fila
completa ¿se puede hacer? ¿COMO?
Por otro lado ¿se puede hacer que en un cuadro combinado no se pueda
escribir, y sólo te permita seleccionar en la lista del desplegable?
mariana
Respuesta Responder a este mensaje
#2 mariana
15/03/2006 - 10:04 | Informe spam
Muchas gracias, David, ya lo hemos insertado.
Pero ahora lo que pretendemos es que en una celda de Excel (2000) aparezca
un cuadro combinado que al desplegarlo aparezca el calendario, es decir, que
sólo esté a la vista cuando entre a esa casilla. (igual a como sale en
outlook cuando vas a variar una fecha en una tarea). ¿Se podría seleccionar
uno o más días dentro del calendario y quede reflejado en la celda destino?

Por otro lado, tenemos un cuadro combinado y queisiéramos que sólo se pueda
seleccionar NO sobreescribir.

Espero "ansiosa" tu contestación, porque llevamos varios días con ello.
(Nuestros conocimientos de excel son básicos y autodidactas...)
mariana


"David" escribió:

Si es en una cantidad limitada de celdas, prueba hacer lo siguiente:

1. En Ver - Barra de herramientas, activa "Cuadro de controles".
2. Haz clic en el botón "Más controles" y luego en "Control calendario".
3. Dibujas el control en tu hoja electrónica, y luego con clic derecho -
Propiedades, buscas la propiedad "Linked Cell", y escribes la dirección de la
celda que vas a vincular al calendario.}
4. Haces clic en el botón "Salir del modo diseño" y pruebas el calendario.


"mariana" escribió:

> quiero que mi hoja muestre el calendario como aparece en outlook (cuando vas
> a modificar una fecha) y poder seleccionar un día en concreto cada vez.
> He intentado por cuadro combinado, pero al tratarse de lista, sólo me coge
> los lunes en mi lista de meses con sus días cuando mi lista es hacia abajo,
> si coloco los meses de izqda a dcha me coge toda la línea
> En ninguno de los dos casos me permite seleccionar un sólo día, sino la fila
> completa ¿se puede hacer? ¿COMO?
> Por otro lado ¿se puede hacer que en un cuadro combinado no se pueda
> escribir, y sólo te permita seleccionar en la lista del desplegable?
> mariana
Respuesta Responder a este mensaje
#3 David
15/03/2006 - 15:35 | Informe spam
Con gusto. Lo que no creo que puedas hacer, es seleccionar un rango de
fechas. El control calendario te permite seleccionar solamente una a la vez.

Lo que sí podrías hacer, es asignar un calendario a una celda (digamos A1),
y otro a otra celda (digamos B1), y así podrías seleccionar el rango de
fechas que deseas.

En cuanto al resto de la consulta, no será muy difícil, aún cuando no sepas
mucho de VBA. Los controles Activex (y el calendario es uno de ellos),
tienen una propiedad "Visible", que te permite controlar si se muestran o no
en tu pantalla. Tendrías que colocar un pequeño botón a la par de la celda
donde quieres registrar la fecha, y cuando hagas clic en él, hacer que la
propiedad "visible" del calendario se active. Luego, cuando hagas clic en
una fecha del calendario, tendrías que hacer que la propiedad "Visible" se
desactive.

¿Cómo?, prueba lo siguiente:

Primero:
En la barra de herramientas "Cuadro de controles", haz clic en el botón
"Modo diseño". Sólo con este botón podrás modificar los controles Activex.

Segundo:
Haz clic derecho en tu calendario, selecciona "Propiedades", y anota el
nombre que aparece en la propiedad "Name". Supongo en lo sucesivo que es
"Calendar1".

Tercero:
Utilizando el botón "Botón de comando", dibuja un pequeño botón cercano a la
celda donde quieres registrar la fecha.

Cuarto:
Haces doble clic en el botón que acabas de dibujar. Te aparecerá la ventana
de Visual Basic con el cursor en un procedimiento generado. Modifícalo para
que diga lo siguiente:

Private Sub CommandButton1_Click()
Calendar1.Visible = True
End Sub

Aquí estás haciendo que la propiedad Visible de tu calendario se active.
Como resultado, posteriormente cuando hagas clic en el botón, eso hará que el
calendario aparezca.

Quinto:
Haces doble clic en el calendario. Nuevamente te aparecerá la ventana de
Visual Basic y el cursor en un procedimiento generado. Modifícalo para que
diga lo siguiente:

Private Sub Calendar1_Click()
Calendar1.Visible = False
End Sub

Aquí estás haciendo que la propiedad Visible de tu calendario se desactive,
por lo que cuando selecciones una fecha, el mismo desaparecerá de la
pantalla, pero la fecha será asignada a la celda que le asociaste como te
comenté ayer.

Sexto:
En la barra de herramientas "Cuadro de controles", haces clic en el botón
"Salir del modo diseño".

PD: Olvidaba algo, y es que tienes que bajar el nivel de seguridad de tu
Excel a "Medio" para que esto te funcione en las próximas sesiones. Si no lo
haces, las macros se desactivarán y los botones perderán su función. Lo
logras, haciendo clic en Herramientas - Macro - Seguridad...

Cordialmente,


"mariana" escribió:

Muchas gracias, David, ya lo hemos insertado.
Pero ahora lo que pretendemos es que en una celda de Excel (2000) aparezca
un cuadro combinado que al desplegarlo aparezca el calendario, es decir, que
sólo esté a la vista cuando entre a esa casilla. (igual a como sale en
outlook cuando vas a variar una fecha en una tarea). ¿Se podría seleccionar
uno o más días dentro del calendario y quede reflejado en la celda destino?

Por otro lado, tenemos un cuadro combinado y queisiéramos que sólo se pueda
seleccionar NO sobreescribir.

Espero "ansiosa" tu contestación, porque llevamos varios días con ello.
(Nuestros conocimientos de excel son básicos y autodidactas...)
mariana


"David" escribió:

> Si es en una cantidad limitada de celdas, prueba hacer lo siguiente:
>
> 1. En Ver - Barra de herramientas, activa "Cuadro de controles".
> 2. Haz clic en el botón "Más controles" y luego en "Control calendario".
> 3. Dibujas el control en tu hoja electrónica, y luego con clic derecho -
> Propiedades, buscas la propiedad "Linked Cell", y escribes la dirección de la
> celda que vas a vincular al calendario.}
> 4. Haces clic en el botón "Salir del modo diseño" y pruebas el calendario.
>
>
> "mariana" escribió:
>
> > quiero que mi hoja muestre el calendario como aparece en outlook (cuando vas
> > a modificar una fecha) y poder seleccionar un día en concreto cada vez.
> > He intentado por cuadro combinado, pero al tratarse de lista, sólo me coge
> > los lunes en mi lista de meses con sus días cuando mi lista es hacia abajo,
> > si coloco los meses de izqda a dcha me coge toda la línea
> > En ninguno de los dos casos me permite seleccionar un sólo día, sino la fila
> > completa ¿se puede hacer? ¿COMO?
> > Por otro lado ¿se puede hacer que en un cuadro combinado no se pueda
> > escribir, y sólo te permita seleccionar en la lista del desplegable?
> > mariana
Respuesta Responder a este mensaje
#4 mariana
28/03/2006 - 17:32 | Informe spam
Buenas tardes David,
Lo primerísimo que queremos hacer es agracederte la ayuda que nos estás
prestando. MUCHAS GRACIAS. Y ahora te contamos:
Hemos seguido los pasos que tan detalladamente nos indicas y hemos
conseguido que efectivamente, tras seleccionar un día y éste se muestre en la
casilla que le hemos indicado, el calendario desaparezca, pero hemos querido
insertar otro comando para que podamos elegir el visualizar o no el
calendario a nuestro antojo y eso no nos lo permite, ya que se le decimos
"true" en la ventana del VBA los dos comandos toman la orden, al igual que si
indicamos "false" (pensaba que serían independientes).


Por otro lado, en nuestro anterior correo te preguntabamos si sabrías
decirnos cómo hacer para que en un cuadro combinado no permita sobreescribir;
que sólo permita seleccionar de la lista que se despliega. ¿sabes si esto es
posible?

Muchísimas gracias otra vez.
mariana


"David" escribió:

Con gusto. Lo que no creo que puedas hacer, es seleccionar un rango de
fechas. El control calendario te permite seleccionar solamente una a la vez.

Lo que sí podrías hacer, es asignar un calendario a una celda (digamos A1),
y otro a otra celda (digamos B1), y así podrías seleccionar el rango de
fechas que deseas.

En cuanto al resto de la consulta, no será muy difícil, aún cuando no sepas
mucho de VBA. Los controles Activex (y el calendario es uno de ellos),
tienen una propiedad "Visible", que te permite controlar si se muestran o no
en tu pantalla. Tendrías que colocar un pequeño botón a la par de la celda
donde quieres registrar la fecha, y cuando hagas clic en él, hacer que la
propiedad "visible" del calendario se active. Luego, cuando hagas clic en
una fecha del calendario, tendrías que hacer que la propiedad "Visible" se
desactive.

¿Cómo?, prueba lo siguiente:

Primero:
En la barra de herramientas "Cuadro de controles", haz clic en el botón
"Modo diseño". Sólo con este botón podrás modificar los controles Activex.

Segundo:
Haz clic derecho en tu calendario, selecciona "Propiedades", y anota el
nombre que aparece en la propiedad "Name". Supongo en lo sucesivo que es
"Calendar1".

Tercero:
Utilizando el botón "Botón de comando", dibuja un pequeño botón cercano a la
celda donde quieres registrar la fecha.

Cuarto:
Haces doble clic en el botón que acabas de dibujar. Te aparecerá la ventana
de Visual Basic con el cursor en un procedimiento generado. Modifícalo para
que diga lo siguiente:

Private Sub CommandButton1_Click()
Calendar1.Visible = True
End Sub

Aquí estás haciendo que la propiedad Visible de tu calendario se active.
Como resultado, posteriormente cuando hagas clic en el botón, eso hará que el
calendario aparezca.

Quinto:
Haces doble clic en el calendario. Nuevamente te aparecerá la ventana de
Visual Basic y el cursor en un procedimiento generado. Modifícalo para que
diga lo siguiente:

Private Sub Calendar1_Click()
Calendar1.Visible = False
End Sub

Aquí estás haciendo que la propiedad Visible de tu calendario se desactive,
por lo que cuando selecciones una fecha, el mismo desaparecerá de la
pantalla, pero la fecha será asignada a la celda que le asociaste como te
comenté ayer.

Sexto:
En la barra de herramientas "Cuadro de controles", haces clic en el botón
"Salir del modo diseño".

PD: Olvidaba algo, y es que tienes que bajar el nivel de seguridad de tu
Excel a "Medio" para que esto te funcione en las próximas sesiones. Si no lo
haces, las macros se desactivarán y los botones perderán su función. Lo
logras, haciendo clic en Herramientas - Macro - Seguridad...

Cordialmente,


"mariana" escribió:

> Muchas gracias, David, ya lo hemos insertado.
> Pero ahora lo que pretendemos es que en una celda de Excel (2000) aparezca
> un cuadro combinado que al desplegarlo aparezca el calendario, es decir, que
> sólo esté a la vista cuando entre a esa casilla. (igual a como sale en
> outlook cuando vas a variar una fecha en una tarea). ¿Se podría seleccionar
> uno o más días dentro del calendario y quede reflejado en la celda destino?
>
> Por otro lado, tenemos un cuadro combinado y queisiéramos que sólo se pueda
> seleccionar NO sobreescribir.
>
> Espero "ansiosa" tu contestación, porque llevamos varios días con ello.
> (Nuestros conocimientos de excel son básicos y autodidactas...)
> mariana
>
>
> "David" escribió:
>
> > Si es en una cantidad limitada de celdas, prueba hacer lo siguiente:
> >
> > 1. En Ver - Barra de herramientas, activa "Cuadro de controles".
> > 2. Haz clic en el botón "Más controles" y luego en "Control calendario".
> > 3. Dibujas el control en tu hoja electrónica, y luego con clic derecho -
> > Propiedades, buscas la propiedad "Linked Cell", y escribes la dirección de la
> > celda que vas a vincular al calendario.}
> > 4. Haces clic en el botón "Salir del modo diseño" y pruebas el calendario.
> >
> >
> > "mariana" escribió:
> >
> > > quiero que mi hoja muestre el calendario como aparece en outlook (cuando vas
> > > a modificar una fecha) y poder seleccionar un día en concreto cada vez.
> > > He intentado por cuadro combinado, pero al tratarse de lista, sólo me coge
> > > los lunes en mi lista de meses con sus días cuando mi lista es hacia abajo,
> > > si coloco los meses de izqda a dcha me coge toda la línea
> > > En ninguno de los dos casos me permite seleccionar un sólo día, sino la fila
> > > completa ¿se puede hacer? ¿COMO?
> > > Por otro lado ¿se puede hacer que en un cuadro combinado no se pueda
> > > escribir, y sólo te permita seleccionar en la lista del desplegable?
> > > mariana
Respuesta Responder a este mensaje
#5 Francisco GMAIL
28/03/2006 - 23:01 | Informe spam
Prueba la propiedad .VISIBLEúLSE / TRUE

Lo del listbox pueba con evento _change()

igualmente el evento _losfocus() y _gotfocus() de los respectivos objetos


Saludos
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida