Foros del Web » Soporte técnico » Ofimática »

Problemas con Formulario en excel

Estas en el tema de Problemas con Formulario en excel en el foro de Ofimática en Foros del Web. Buen dia a todos, En la universidad me mandaron la siguiente tarea: realizar un formulario donde inserte en una hoja de excel la hora y ...
  #1 (permalink)  
Antiguo 08/11/2009, 11:22
 
Fecha de Ingreso: abril-2006
Ubicación: Venezuela
Mensajes: 126
Antigüedad: 18 años
Puntos: 0
Problemas con Formulario en excel

Buen dia a todos,

En la universidad me mandaron la siguiente tarea: realizar un formulario donde inserte en una hoja de excel la hora y fecha tomados de un cuadro de lista de un formulario.

Realize mi formulario con 2 cuadro de lista: hora y fecha.

El primero tomas los valores de la hoja 1 el rango de celdas x1: x25.
El segundo toma los valores del rango de celdas Y1:Y25.

El codigo para el cuadro de lista 1 (Hora) es el siguiente:
Private Sub ListBox1_Click()
Range("c2").Select
ActiveCell.FormulaR1C1 = ListBox1
End Sub


El codigo para el cuadro de lista 2 (Fecha) es el siguiente:
Private Sub ListBox2_Click()
Range("d2").Select
ActiveCell.FormulaR1C1 = ListBox2
End Sub

El codigo para el boton insertar es el siguiente:

Private Sub CommandButton1_Click()

Selection.EntireRow.Insert ---> //aqui es donde esta el problema me inserta
una fila pero sin el formato establecido//

ListBox1.SetFocus

End Sub

El formulario funciona perfectamente, pero el problema que tengo es que al insertar una nueva fila, este no mantiene el formato de celda para la fecha y hora y por lo tanto al ingresar los valores del cuadro de lista del formulario a la hoja de excel este lo ingresa como valores con decimales.

¿Como hago para que cuando lo inserte, coloque los valores correctamente?


Agradeciendo de antemano su colaboracion dada
  #2 (permalink)  
Antiguo 10/11/2009, 03:35
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 6 meses
Puntos: 66
Respuesta: Problemas con Formulario en excel

hola patricia,

no sé si es tarde para tu ejercicio pero te paso una posible solución.
--------------------------
Private Sub CommandButton1_Click()

Dim x As Integer
x = ActiveCell.Row

Selection.EntireRow.Insert
Range("A1").Select
Selection.Copy
Rows(x & ":" & x).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
--------------------------------------
suponiendo que en tu celda A1 tienes el formato correcto de fecha y hora, esta función aplica el mismo formato que tiene A1 para la nueva fila insertada.
Espero que te sirva.

salu2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:26.