Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Funzione per ricavare l'ultimo giorno del mese?

    Salve,
    Esiste una funzione che, dato il numero del mese (da 1 a 12) e dell'anno, mi restituisca automaticamente l'ultimo giorno valido di quel mese stesso?

    es:
    LastDayOfMonth(2,2005) > "28" (2 = febbraio)
    LastDayOfMonth(2,2004) > "29" (2 = febbraio, ma il 2004 è stato bisestile)
    LastDayOfMonth(5,2005) > "31" (5 = maggio)
    LastDayOfMonth(6,2005) > "30" (6 = giugno)

    Grazie mille! :-)
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  2. #2
    aggiungi un mese
    vai al primo del mese
    togli un giorno

  3. #3
    codice:
    <%
    function getLastMonthDay(m,y)
    if isNumeric(m) and (m > 0 and m < 13) and isNumeric(y) then
    if m < 10 then m = "0" & m
    for i = 31 to 28 step -1
    if isDate(i & "/" & m & "/" & y) then
    getLastMonthDay = i
    exit for
    end if
    next
    else
    getLastMonthDay = 0
    end if
    end function
    
    response.write getLastMonthDay(9,2005)
    %>

  4. #4
    mimmo, ma da quando sei diventato cosi' sprecone di risorse?

    basta una riga...

    codice:
    Function LastDayOfTheMonth(theDate)
       
    	LastDayOfTheMonth = DateAdd("D",-1,("01/" & DatePart("m", DateAdd("M",1,theDate)) & "/" & DatePart("yyyy",DateAdd("M",1,theDate))))
    
    End Function
    
    Response.Write "eccola..." & LastDayOfTheMonth("15/09/2004") & "
    "

  5. #5
    E' sempre colpa dell'euro.

  6. #6
    Optime, ottimo! :-)

    Se scrivo <%= LastDayOfTheMonth(Date()) %> funziona perfettamente dandomi naturalmente l'ultimo giorno del mese corrente
    E se volessi avere l'ultimo giorno del mese successivo a quello attuale? Ho smanettato un po' la funzione, ad es. mettendo DatePart("m", DateAdd("M",2,theDate)) - pensando di aggiungere 2 mesi - ma se poi metto <%= LastDayOfTheMonth("30/11/2005") %> ottengo.. 31/12/2004!!

    EDIT: Ehm... ok, ho messo il 2 anche qui: DatePart("yyyy",DateAdd("M",2,theDate))
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  7. #7
    Bene, adesso viene la funzione per ricavare il primo giorno del mese:
    codice:
    Function FirstDayOfTheMonth(theDate)
    FirstDayOfTheMonth = "01/" & DatePart("m", theDate) & "/" & DatePart("yyyy",theDate)
    End Function
    Solo che quest'infame mi restituisce il mese ad 1 cifra e non a 2, del tipo:

    FirstDayOfTheMonth("15/01/2006") >> "01/1/2006"

    Invece, la funzione di Optime mi restituisce il mese a due cifre, giustamente... ma come fa?
    Cosa sbaglio? che mi sono perso?
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.