Visual Basic - DÍas con 2 dígitos

Life is soft - evento anual de software empresarial
   
Vista:

DÍas con 2 dígitos

Publicado por Sandra (2 intervenciones) el 25/03/2008 15:14:29
Hola, Buenas tardes.
Escribo al foro para ver si alguno de vosotros me puede ayudar.

Tengo una celda que contiene un día con el formato 8/03/2008. Deseo extraer el día del mes que corresponde a esa fecha, por lo que utilizo la siguiente función:

DiaDeLMes = Format(TestDateTime, "d”)

esta función me devuelve el número 1,2,3,…hasta 31. Hasta ahi bien

Ahora bien, necesito tener los números menores de diez con dos dígitos, es decir 01,02,03….

He probado de mil maneras, hasta poniéndole yo el cero delante como en el ejemplo siguiente.

If DiaDeLMes = 1 Then

DiaDeLMes = “0” & DiaDeLMes
Else
DiaDeLMes=DiaDeLMes
End If

No consigo solventar el error, y me urge muchísimo.

Espero que me podáis ayudar, muchas gracias
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:DÍas con 2 dígitos

Publicado por Ivan (1041 intervenciones) el 25/03/2008 16:13:19
Si la variable en la que guardas el día es numérica nunca lo vas a conseguir, deberías usar una de tipo String. Además no tienes que comparar del 1 al 9, puedes hacerlo así:
If DiaDeLMes <=9 Ten
stDiasDelMes = "0" & DiaDelMes
End If
Pero, como ya te dije, deberás usar una variable de tipo cadena o String.
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:DÍas con 2 dígitos

Publicado por Sandra (2 intervenciones) el 25/03/2008 17:12:24
Sigue sin mostrarme los dos dígitos, lo hago tal como me dices:

Sub drasa()

Dim DiaDelMes As String

DiaDelMes = Format(Cells(1, 1), "d")

If DiaDelMes <= 9 Then
DiaDelMes = "0" & DiaDelMes
End If

ActiveSheet.Range("C1").Value = DiaDelMes
End Sub

Nada de nada, no entiendo que estoy haciendo mal. GRACIAS
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:DÍas con 2 dígitos

Publicado por respondon (26 intervenciones) el 25/03/2008 18:04:30
Sub drasa()

Dim DiaDelMes As String

DiaDelMes = Format(Cells(1, 1), "d")

If cint(DiaDelMes) < 10 Then
DiaDelMes = "0" & DiaDelMes
End If

ActiveSheet.Range("C1").Value = DiaDelMes
End Sub
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:DÍas con 2 dígitos

Publicado por Alberto (1 intervención) el 25/03/2008 21:24:37
Las respuestas que te han dicho son validas, pero tambioen puedes probar con:

DiaDeLMes = Format(TestDateTime, "d”)
DiasDelMes=Format(DiaDelMes,"0#")

creo que es mas sencillo.

Un saludo.
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:DÍas con 2 dígitos

Publicado por Geralt (1 intervención) el 26/03/2008 12:45:05
Prueba así

Sub drasa()

Dim DiaDelMes As String

DiaDelMes = Format(Cells(1, 1), "d")

If CInt(DiaDelMes) < 10 Then
DiaDelMes = "0" & DiaDelMes
End If

ActiveSheet.Range("C1").NumberFormat = "@"
ActiveSheet.Range("C1").Value = DiaDelMes
End Sub
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