Contatenar dos fechas

Que tal, mi pregunta es si hay alguna manera de contatenar dos fechas, es decir si en A1 tengo 01-09-2011 y en A2 15-09-2011, el resultado sea Semana del 01 al 15 de Septiembre de 2011, sin que se repita en el texto el mes. Otro caso es si tengo en A1 29-09-2011 y en A2 05-10-2011 el resultado sea : Semana del 29 de Septiembre al 05 de Octubre de 2011. De antemano muchas gracias.

1 respuesta

Respuesta
1
Con las funciones de excel se puede, salvo el nombre del mes solo te puedo dar el número
Seria:
=si(mes(a1)=mes(b1);"semana del " & dia(a1) & " al " & dia(b1) & " de " & mes(a1) & " de " & año(a1);si(mes(a1)<>mes(b1);"semana del " & dia(a1) & " de " & mes(a1) & " al " & dia(b1) & " de " & mes(b1) & " de " & año(a1);0))
Ahora si es extremadamente necesario que el mes lo muestre el letras, se puede pero con una función personalizada mediante macro
Me avisas
Que tal muchas gracias por tu respuesta, y efectivamente quisiera que el mes apareciera en texto.
Espero tu respuesta.
Nuevamente gracias.
Ok. Entonces lo haremos mediante el camino tortuoso, je, je, je
Debes insertar un modulo en tu proyecto
En ese modulo pegas esto:
Dim m As String
Function mi_fecha(inicio As Date, final As Date)
Dim m1 As Byte
Dim m2 As Byte
Dim c As String
Dim mm As String
Dim mmm As String
m1 = Mid(inicio, 4, 2)
m2 = Mid(final, 4, 2)
If m1 = m2 Then
m_mes (m1)
c = "Semana del " & Mid(inicio, 1, 2) & " al " & Mid(final, 1, 2) & " de " & m & " de " & Mid(final, 7, 4)
Else
m_mes (m1)
mm = m
m_mes (m2)
mmm = m
c = "Semana del " & Mid(inicio, 1, 2) & " de " & mm & " al " & Mid(final, 1, 2) & " de " & mmm & " de " & Mid(final, 7, 4)
End If
mi_fecha = c
End Function
Sub m_mes(mes As Byte)
Select Case mes
Case Is = 1
m = "Enero"
Case Is = 2
m = "Febrero"
Case Is = 3
m = "Marzo"
Case Is = 4
m = "Abril"
Case Is = 5
m = "Mayo"
Case Is = 6
m = "Junio"
Case Is = 7
m = "Julio"
Case Is = 8
m = "Agosto"
Case Is = 9
m = "Septiembre"
Case Is = 10
m = "Octubre"
Case Is = 11
m = "Noviembre"
Case Is = 12
m = "Diciembre"
End Select
End Sub
La función se llama mi_fecha(inicio;final) y necesita 2 argumentos como ya ves
Ejemplo ceda A1 01-09-2011 celda b1 15-09-2011
en C1 pondrias =mi_fecha(a1;b1)
Y ya eso es todo.
Hola nuevamente, realice lo indicado, pero no aparece el mes, solo aparece semana del 01 de al 15 de de 2011. Espero tu valiosa ayuda.
Gracias. :=)
Mmmm veo que no estas utilizando la declaración explicita de variables en ese modulo
Agrega esto al modulo, deben ser las primeras 2 lineas de todo antes del código que te indique
Option Explicit
Dim m As String
Hola, perfecto, te envío muchos agradecimientos desde la ciudad de México.
Espero algún día ser experto como ustedes.
Muchas Gracias.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas