incrustar celda tipo Calendario ( "Comienso") de MsProjet en excel

16/09/2005 - 22:02 por jaraya | Informe spam
Como puedo hacer para tener una celda en Excel, como las de la columna
"Comienso" de Ms Project en la cual se despliega un calendario y uno elije la
fecha.Que es lo que uno visualisa.
Es decir que para poner una fecha uno elija dentro de la hoja del calendario.
Se puede exportar este tipo de celdas a excel?

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
17/09/2005 - 01:06 | Informe spam
hola, jaraya !

... tener una celda en Excel, como las de la columna "Comienso" de Ms Project
... en la cual se despliega un calendario y uno elije la fecha que uno visualisa [...]



-> puedes incrustar un control DTPicker [Date&Time] o... un control Calendar...
puede ser 'directamente' en una hoja de calculo o... a traves de un formulario de usuario
-> [p.e. en la hoja]: [menu] insertar / objeto... o desde la barra de herramientas 'cuadro de controles' / mas controles...
control calendar x.x [segun la version de office] o...
Microsoft Date and Time Picker x.x [SPx] -segun numero de version y service-pack del archivo-

-> suponiendo que seleccionaste el control calendario [incrustado en la hoja]...
y deseas que se muestre SOLO si [en esa hoja] se selecciona de entre el rango 'A1:A5'...
y que el resultado de la seleccion se ponga en la celda 'activa'...
en el modulo de codigo de 'esa' hoja ==Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Calendar1.Top = ActiveCell.Top
Calendar1.Left = ActiveCell.Width + 5
Calendar1.Visible = Not Intersect(ActiveCell, Range("a1:a5")) Is Nothing
End Sub
Private Sub Calendar1_Click()
ActiveCell = CDate(Calendar1)
End Sub

-> suponiendo que seleccionaste el control calendario [incrustado en la hoja]...
y deseas que se muestre SOLO si [en esa hoja] se selecciona de entre el rango 'B1:B4' y 'C7'...
y que el resultado de la seleccion se ponga en la celda 'activa'...
en el modulo de codigo de 'esa' hoja ==Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With DTPicker1
.Visible = Not Intersect(Target, Range("b2:b4,c7")) Is Nothing
.Top = Target.Top - 1: .Left = Target.Left + Target.Width + 2
End With
End Sub
Private Sub DTPicker1_Change()
ActiveCell = CDate(DTPicker1)
End Sub

si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.

p.d. el control DTPicker requiere que esta instalado y registrado...
-> el componente [+/- C:\Windows\System[32]\mscomct2.ocx]...
el control calendar requiere que este instalado y registrado...
-> el componente [C:\Archivos de programa\Microsoft Office x.0\Officexx\MSCal.ocx]
Respuesta Responder a este mensaje
#2 jaraya
17/09/2005 - 22:35 | Informe spam
Hola Hector M:
si reulto pero quedo como umobjeto incrustado, y no como se presenta en MS
Project.Como hacerlo para que toda una columna quede con la opcion de elegir
una fecha desde este calendaro desplegable. Es decir que toda la columna
tenga esta opcion en cada celda.
saludos juan

"Héctor Miguel" escribió:

hola, jaraya !

> ... tener una celda en Excel, como las de la columna "Comienso" de Ms Project
> ... en la cual se despliega un calendario y uno elije la fecha que uno visualisa [...]

-> puedes incrustar un control DTPicker [Date&Time] o... un control Calendar...
puede ser 'directamente' en una hoja de calculo o... a traves de un formulario de usuario
-> [p.e. en la hoja]: [menu] insertar / objeto... o desde la barra de herramientas 'cuadro de controles' / mas controles...
control calendar x.x [segun la version de office] o...
Microsoft Date and Time Picker x.x [SPx] -segun numero de version y service-pack del archivo-

-> suponiendo que seleccionaste el control calendario [incrustado en la hoja]...
y deseas que se muestre SOLO si [en esa hoja] se selecciona de entre el rango 'A1:A5'...
y que el resultado de la seleccion se ponga en la celda 'activa'...
en el modulo de codigo de 'esa' hoja ==> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Calendar1.Top = ActiveCell.Top
Calendar1.Left = ActiveCell.Width + 5
Calendar1.Visible = Not Intersect(ActiveCell, Range("a1:a5")) Is Nothing
End Sub
Private Sub Calendar1_Click()
ActiveCell = CDate(Calendar1)
End Sub

-> suponiendo que seleccionaste el control calendario [incrustado en la hoja]...
y deseas que se muestre SOLO si [en esa hoja] se selecciona de entre el rango 'B1:B4' y 'C7'...
y que el resultado de la seleccion se ponga en la celda 'activa'...
en el modulo de codigo de 'esa' hoja ==> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With DTPicker1
.Visible = Not Intersect(Target, Range("b2:b4,c7")) Is Nothing
.Top = Target.Top - 1: .Left = Target.Left + Target.Width + 2
End With
End Sub
Private Sub DTPicker1_Change()
ActiveCell = CDate(DTPicker1)
End Sub

si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.

p.d. el control DTPicker requiere que esta instalado y registrado...
-> el componente [+/- C:\Windows\System[32]\mscomct2.ocx]...
el control calendar requiere que este instalado y registrado...
-> el componente [C:\Archivos de programa\Microsoft Office x.0\Officexx\MSCal.ocx]



Respuesta Responder a este mensaje
#3 Héctor Miguel
17/09/2005 - 22:48 | Informe spam
hola, juan !

... quedo como umobjeto incrustado, y no como se presenta en MS Project [...]



acabo de responder a tu otro mensaje que colgaste de una consulta anterior similar :))

saludos,
hector.
Respuesta Responder a este mensaje
#4 jaraya
17/09/2005 - 23:45 | Informe spam
De vueltas HM: Me funciono el segundo codigo, pero aparece el calendario en
la columna vecina ala celda activa, como hago para que aparesca en lamisma
celda?
te repito quiero que apraesca el calendario en la misma celda activay no en
la inmediatamente a la derecha.
Te agradesco desde ya

"Héctor Miguel" escribió:

hola, jaraya !

> ... tener una celda en Excel, como las de la columna "Comienso" de Ms Project
> ... en la cual se despliega un calendario y uno elije la fecha que uno visualisa [...]

-> puedes incrustar un control DTPicker [Date&Time] o... un control Calendar...
puede ser 'directamente' en una hoja de calculo o... a traves de un formulario de usuario
-> [p.e. en la hoja]: [menu] insertar / objeto... o desde la barra de herramientas 'cuadro de controles' / mas controles...
control calendar x.x [segun la version de office] o...
Microsoft Date and Time Picker x.x [SPx] -segun numero de version y service-pack del archivo-

-> suponiendo que seleccionaste el control calendario [incrustado en la hoja]...
y deseas que se muestre SOLO si [en esa hoja] se selecciona de entre el rango 'A1:A5'...
y que el resultado de la seleccion se ponga en la celda 'activa'...
en el modulo de codigo de 'esa' hoja ==> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Calendar1.Top = ActiveCell.Top
Calendar1.Left = ActiveCell.Width + 5
Calendar1.Visible = Not Intersect(ActiveCell, Range("a1:a5")) Is Nothing
End Sub
Private Sub Calendar1_Click()
ActiveCell = CDate(Calendar1)
End Sub

-> suponiendo que seleccionaste el control calendario [incrustado en la hoja]...
y deseas que se muestre SOLO si [en esa hoja] se selecciona de entre el rango 'B1:B4' y 'C7'...
y que el resultado de la seleccion se ponga en la celda 'activa'...
en el modulo de codigo de 'esa' hoja ==> Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With DTPicker1
.Visible = Not Intersect(Target, Range("b2:b4,c7")) Is Nothing
.Top = Target.Top - 1: .Left = Target.Left + Target.Width + 2
End With
End Sub
Private Sub DTPicker1_Change()
ActiveCell = CDate(DTPicker1)
End Sub

si cualquier duda [o informacion adicional]... comentas?
saludos,
hector.

p.d. el control DTPicker requiere que esta instalado y registrado...
-> el componente [+/- C:\Windows\System[32]\mscomct2.ocx]...
el control calendar requiere que este instalado y registrado...
-> el componente [C:\Archivos de programa\Microsoft Office x.0\Officexx\MSCal.ocx]



Respuesta Responder a este mensaje
#5 Héctor Miguel
18/09/2005 - 03:19 | Informe spam
hola, jaraya !

... funciono el segundo codigo, pero aparece el calendario en la columna vecina ala celda activa
... quiero que apraesca el calendario en la misma celda activa y no en la inmediatamente a la derecha.



-> tambien te habia puesto una propuesta para esa 'variante' en el mensaje que 'colgaste' de una consulta anterior...
-> suponiendo que 'la columna' es la 'D'... [creo que es lo mas parecido al ms-project] ;)
en el modulo de codigo de 'esa' hoja ==Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With DTPicker1
.Visible = Not Intersect(Target, Range("d:d")) Is Nothing
.Top = Target.Top - 1: .Left = Target.Left
End With
End Sub
Private Sub DTPicker1_Change()
ActiveCell = CDate(DTPicker1)
End Sub

saludos,
hector.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida