Formato de textbox a celda

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Formato de textbox a celda

Notapor raditz » 20 May 2006 20:09

Tengo un problema con los formatos
kisiera que al poner un formato de fecha en un textbox y despues ese valor pasarlo a una celda, se pasa con el formato Fecha de excel,formato celda.
para asi despues poder compararlo con otra celda que contiene una fecha que se ingresa directamente en la celda, nose si me explico correctamente?
ej. en un textbox pongo 17/5/2006 y eso lo pega en una celda y en otra celda ingreso 17/5/2006, asi nomas excel no los toma como iguales, y no me deja comparalos.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
raditz
Miembro Frecuente
Miembro Frecuente
 
Registrado: 29 Mar 2006 18:09

Re: Formato de textbox a celda

Notapor KL » 21 May 2006 07:12

El control TextBox almacena y devuelve datos solo en formato Texto - es ahi donde radica tu problema. Deberas transformar el texto en una fecha valida, p.ej. mediante la funcion CDate.

Podrias hacer algo como lo siguiente:

1) Si usas un control TextBox en un UserForm (Formulario de VBA) entonces usa el evento Exit del objeto TextBox, asi:

Código: Seleccionar todo
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
   Range("A1") = CDate(TextBox1)
End Sub


o mejor aun crea un boton digamos Finalizar que pase todos los datos a sus respectiavas celdas al cerrar el formulario. Para ello usa el evento Click del objeto CommandButton(Finalizar):

Código: Seleccionar todo
Private Sub Finalizar_Click()
    Range("A1") = CDate(TextBox1)
    Unload Me
End Sub


2) Si usas un control TextBox de la barra de herramientas Visual Basic en la hoja de Excel, entonces prueba usar el evento LostFocus del objeto TextBox, algo asi:

Código: Seleccionar todo
Private Sub TextBox1_LostFocus()
    Range("A1") = CDate(TextBox1)
End Sub
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Re: Formato de textbox a celda

Notapor raditz » 22 May 2006 00:14

q buena respuesta, 3 opciones para 3 posibles casos
sos un grande KL, muchas gracias, me anduvo perfecto
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
raditz
Miembro Frecuente
Miembro Frecuente
 
Registrado: 29 Mar 2006 18:09


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: Inti y 6 invitados