Visual Basic - problema formato.

Life is soft - evento anual de software empresarial
 
Vista:

problema formato.

Publicado por Nico Vega (13 intervenciones) el 20/03/2006 19:15:03
Que tal.
tengo el siguiente problema. tengo un texto que contiene una fecha del formato mmm/yy. ej: Oct/05
el tema es que yo quiero pasar esa fecha a una bd access el problema es que cdo yo en vb leo esa fecha oct/05 hago lo siguiente.
para el ejemplo uso un text box.

text1.text= "Oct/05"
Dim h As Date
h = Format(h, "mmm/yy")
h = Format(CDate(Text1.Text), "mmm/yy")
MsgBox (h)

por alguna razon me muestra 06/10/06. alguien tiene alguna idea de como hacer para que me muestre 10/05 ó oct/05 en lugar de esa fecha.
pongo el msgbox solamente para saber el valor de la variable.
agradesco su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:problema formato.

Publicado por v18s (5 intervenciones) el 20/03/2006 19:59:09
Checa esta funcion, yo la hice, en algo te ayudara

Public Function Format_Fecha(Fecha As String)
If InStr(Fecha, ":") Then
Format_Fecha = "convert(datetime, '" & Mid(Fecha, 4, 2) & "/" & Mid(Fecha, 1, 2) & "/" & Mid(Fecha, 7, 4) & " " & Format(Fecha, "short time") & "')"
Else
Format_Fecha = Fecha
End If
End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 7
Ha aumentado su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:problema formato.

Publicado por EL VIEJO CHARLES (262 intervenciones) el 21/03/2006 02:08:42
aqui tienes la solucion no se si es lo que quieres:

Dim H
H = Text1.Text
''si quieres como 10/05 utiliza esta linea
H = Format(H, "mm/yy")
''''''''''

''si quieres Oct/05
'H = Text1.Text
''''''''''''
MsgBox (H)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problema formato.

Publicado por Matías Freire (421 intervenciones) el 21/03/2006 15:40:10
Nicolas...

Tu problema está en el formato que le has asignado al campo en tu base de datos. Hacé lo siguiente:

1)abri la DB con access
2)abri en modo diseño la tabla donde esta el campo que quieres que te aparezca ese formato de fecha
3)Seleccioná el campo que tiene problemas
4)En la columna "Tipo de Datos" seleccioná [Fecha/Hora]
5)En la parte inferior (en las solapas de propiedades) poné en el campo formato lo siguiente (sin los corchetes) [mmm/dd], o sea, las tres m, una barra, y las dos d
6)guardá los cambios en la DB

ejemplo de como grabar el campo desde vb:

Private Sub Command1_Click()
Dim cn As New ADODB.Connection

cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db1.mdb;Jet OLEDB;"

cn.Execute ("INSERT INTO Tabla1 (fecha) VALUES (#05/06#)")

End Sub

donde 05 es el mes y 06 es el dia. fijate que en SQL para mandar una fecha la tenes que poner en tre los numerales

espero que te sirva saludos!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problema formato.

Publicado por Nico Vega (13 intervenciones) el 22/03/2006 20:53:44
Gracias por las ayudas pero lo soluciones de una forma poco ortodoxa me mande una funcion que me valide el texto y me asigne el mes. aca la paso.


Public Function pasafecha(fecha As String)
Select Case Left(fecha, 3)
Case Is = "Ene"
fecha = "01/01/" & Right(fecha, 2)
Case Is = "Feb"
fecha = "01/02/" & Right(fecha, 2)
Case Is = "Mar"
fecha = "01/03/" & Right(fecha, 2)
Case Is = "Abr"
fecha = "01/04/" & Right(fecha, 2)
Case Is = "May"
fecha = "01/05/" & Right(fecha, 2)
Case Is = "Jun"
fecha = "01/06/" & Right(fecha, 2)
Case Is = "Jul"
fecha = "01/07/" & Right(fecha, 2)
Case Is = "Ago"
fecha = "01/08/" & Right(fecha, 2)
Case Is = "Set"
fecha = "01/09/" & Right(fecha, 2)
Case Is = "Oct"
fecha = "01/10/" & Right(fecha, 2)
Case Is = "Nov"
fecha = "01/11/" & Right(fecha, 2)
Case Is = "Dic"
fecha = "01/12/" & Right(fecha, 2)
End Select
pasafecha = fecha
End function

si a alguien le sirve se las dejo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar