Visual Basic - DTPicker1 + 15 y sucesivamente

Life is soft - evento anual de software empresarial
 
Vista:

DTPicker1 + 15 y sucesivamente

Publicado por EMANUEL (45 intervenciones) el 24/03/2007 04:22:27
hola amigos tengo un problema que tal vez para ustedes sea demaciado facil y por esa razon acudo a ustedes. Mi problema es que necesito generar fechas que sean dia 2 y 17 de cada mes, es decir, si tengo la fecha 02/04/2005, necesito que la proxima fecha sea 17/04/2005, esto es facil para los meses que tiene 30 dias, pero el problema biene cuando hay meses de 31 o febrero de 28.
Se me ocurre manejarlo con un control DTPicker, el cual el valor lo mando a un text, entonces a ese DTPicker1 sumarle 15 (DTPicker1 +15) entonces me dara como resultado 17/04/2005, pero si se hace de esa manera con todos los meses hay meses que como ya dije antes traen mas dias y no coinsiden las fechas.

de que manera podria hacer esta operacion??, tambien se me ocurre ir sumandole 1 al DTPicker1 hasta que llegue a el dia 2 o 17, pero como valido o comparo el dia de una fecha es decir, si la fecha es 17/04/2005, como comparo solo el dia 17, ya que el formato es dd/mm/yyyy, ayudenme por favor...

desde ahora mil gracias amigos.
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:DTPicker1 + 15 y sucesivamente

Publicado por Javier (35 intervenciones) el 24/03/2007 11:20:07
Sin usar ningun DtPicker
En un textbox (Text1) pones la fecha que quieras incrementar y pones este code:

If Day(Text1) = 2 Then
Text1 = "17" & "/" & Month(Text1) & "/" & Year(Text1)
Else
If Month(Text1) = 12 Then
Text1 = "02" & "/" & "01" & "/" & Year(Text1) + 1
Else
Text1 = "02" & "/" & Month(Text1) + 1 & "/" & Year(Text1)
End If
End If

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:DTPicker1 + 15 y sucesivamente

Publicado por Alex (53 intervenciones) el 25/03/2007 12:24:08
El siguiente código genera dos fechas por mes durante 12 meses (24 fechas) en función del valor del DTPicker y los días que le quieras sumar. Es este caso las fechas son fijas a los días 2 y 17 de cada mes. (El DTPicher tiene fecha 02/04/2005)
Para ilustrar el ejemplo, los resultados los pongo en un ListBox lo puedes poner en cualquier otro control o en una matriz.

Dim FechaInicio As Date, NuevaFecha As Date
Dim i As Integer
FechaInicio = DTPicker1.Value
List1.AddItem FechaInicio
NuevaFecha = FechaInicio
For i = 1 To 12
NuevaFecha = DateAdd("d", 15, NuevaFecha)
List1.AddItem NuevaFecha
If i = 12 Then Exit For
NuevaFecha = DateAdd("m", i, FechaInicio)
List1.AddItem NuevaFecha
Next i
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