UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo


No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

1RESUELTO modificar vaciado de calendario el 29/07/14, 11:24 pm

maquinitaazul


Hola amigos expertos, hoy vengo con una gran duda acerca de un calendario en excel. Primero que nada quiero decir que el calendario que aquí les traigo no es uno que excel de por default, sino que es uno creado a base de programación y de hecho muy impresionante, es una aportación de un grande Macro Antonio. He optado por utilizar su aporte porque he tenido mucho problemas con el control calendario que excel maneja, ademas que el archivo que quiero formar será visto en varias versiones de excel y por eso ocupo que el calendario sea visible en toda versión. Bueno, mi duda es; ¿cómo puedo cambiar la celda en la que se vacía la fecha del calendario?, he intentado entender el código, pero la verdad este tipo de porgramación va mas allá de mis limites, espero me puedan ayudar expertos. Saludos
Archivos
Calendario-automatico-desde-Excel (1).zip
No tienes los permisos para descargar los archivos.
(48 KB)

2RESUELTO Re: modificar vaciado de calendario el 30/07/14, 03:00 pm

tyno

avatar
Hola maquinitaazul.
Tendrías que entrar al modulo clase y modificar las dos ultimas lineas de este codigo:

Private Sub MiLabel_Click()
On Error Resume Next

If Val(Mid(MiLabel.Name, 2)) = 1 Then
   If Calendario.xMes.ListIndex > 0 Then
      Calendario.xMes.ListIndex = Calendario.xMes.ListIndex - 1
   Else
      If Calendario.xAño.ListIndex > 0 Then
         Calendario.xMes.ListIndex = 11
         Calendario.xAño.ListIndex = Calendario.xAño.ListIndex - 1
      End If
   End If
End If

If Val(Mid(MiLabel.Name, 2)) = 3 Then
   If Calendario.xMes.ListIndex < 11 Then
      Calendario.xMes.ListIndex = Calendario.xMes.ListIndex + 1
   Else
      If Calendario.xAño.ListIndex < Calendario.xAño.ListCount - 1 Then
         Calendario.xMes.ListIndex = 0
         Calendario.xAño.ListIndex = Calendario.xAño.ListIndex + 1
      End If
   End If
End If

If Val(Mid(MiLabel.Name, 2)) = 5 Then
   If Calendario.xAño.ListIndex > 0 Then
      Calendario.xAño.ListIndex = Calendario.xAño.ListIndex - 1
   End If
End If

If Val(Mid(MiLabel.Name, 2)) = 6 Then
   If Calendario.xAño.ListIndex < Calendario.xAño.ListCount - 1 Then
      Calendario.xAño.ListIndex = Calendario.xAño.ListIndex + 1
   End If
End If

If Val(Mid(MiLabel.Name, 2)) = 7 Then Unload Calendario

If Val(Mid(MiLabel.Name, 2)) = 2 Or _
   Val(Mid(MiLabel.Name, 2)) = 4 Then
   Beep
End If
   
If Val(Mid(MiLabel.Name, 2)) < 8 Then Exit Sub

ActiveCell = CDate(MiLabel.Tag)
ActiveCell.Offset(0, 1).Select
End Sub


De esas dos lineas en la primera  se ha determinado donde se asigna la fecha seleccionada. Con la segunda linea se ha establecido desplazar la selección una celda a la derecha. 

Saludos

3RESUELTO Re: modificar vaciado de calendario el 31/07/14, 02:36 am

maquinitaazul


Hola Tyno, gracias por contestar. Lo que me indicas es que el calendario aparezca en la columna contigua. Estuve leyendo y leyendo el código y logre ver que en el evento this wookbook y vi esto:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range): On Error GoTo Sal
   Unload Calendario
   If UCase(Sh.Cells(1, Target.Column)) Like "*FECHA*" And _
      Target.Row > 1 And _
      Target.Cells.Count = 1 And _
      IsEmpty(Target.Offset(-1, 0)) = False Then
      Calendario.Top = ActiveCell.Top + 160
      Calendario.Left = ActiveCell.Left + 18
      Calendario.Show
   End If
Sal:
End Sub

Lo que entiendo aquí es que toda aquella celda ,(después del encabezado), que contenga la palabra FECHA, debajo de ella se ejecutara el calendario, pensé que aquí sería la modificación. De todas formas muchas gracias, probaré tu opción y comento...

mechas


Hola chicos, yo tambien he querido trabajar en este gran calendario, pero no doy para modificar las celdas en donde quiero que despliegue el calendario, pero también necesito corregir las fechas del mes ya que no concuerdan los días. como se puede corregir esto, agradezco su gran ayuda.

5RESUELTO modificar vaciado de calendario el 04/06/17, 03:27 pm

gomezvila


Buenas tardes
Espero sea lo que necesitan
Archivos
Calendario-automatico-desde-Excel (1).zip
No tienes los permisos para descargar los archivos.
(48 KB)

6RESUELTO Re: modificar vaciado de calendario el 06/06/17, 12:58 pm

mechas


Gracias por la ayuda.
Eso de poner el calendario en la primera columna es notorio.
pero si quiero poner el calendario digamos que en la celda D180 por dar un ejemplo. ¿Donde modifico eso?, ese es al punto donde quiero llegar.
Pero gracias por la ayuda, ojala puedas dar con esa ultima pregunta que hice.

7RESUELTO modificar vaciado de calendario el 07/06/17, 03:43 am

gomezvila


Buenos días
Mira a ver si te vale
Un saludo
José Carlos
Archivos
Calendario-automatico-desde-Excel (1).xlsm
No tienes los permisos para descargar los archivos.
(51 KB)

8RESUELTO Re: modificar vaciado de calendario el 08/06/17, 01:27 pm

mechas


Gracias por la ayuda amigo.
Me sirvió esto ultimo, falto que me explicara donde modificaba la celda pero ya note el cambio. Mil gracias!!!

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.