Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    29

    Aiuto su VBS Script

    Salve a tutti, ho una piccola difficolta su un VBS :

    la funzione Data

    in pratica ho :

    StrAnno = Trim(Year(Date()))
    StrMese = Trim(Month(Date()))
    StrGiorno = Trim(Day(Date()))

    If StrMese < 10 Then
    StrMese = Trim("0" & StrMese)
    End If

    If StrGiorno < 10 Then
    StrGiorno = Trim("0" & StrGiorno )
    End If
    ----------------------------

    il problema è tutti i primi giorni del mese, che
    in realtà la data e del giorno e del mese precedente...
    in pratica oggi 01/02/2007....
    mi deve dare 31/01/2007

    se ci metto -1 su mi da 00/00/2007

    Mi aiutate per favore...

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    Moderazione

    Attenzione a postare le domande nell'area corretta, e soprattutto ad usare titoli significativi, come da Regolamento.

    Qui ho corretto e spostato io...
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    29

    Re: Moderazione

    Originariamente inviato da alka
    Attenzione a postare le domande nell'area corretta, e soprattutto ad usare titoli significativi, come da Regolamento.

    Qui ho corretto e spostato io...

    Chiedo Scusa... Ma non ho trovato dove metterlo..

  4. #4
    Se ho capito bene vuoi ottenere la data di ieri in formato dd/mm/yyyy; fai così:
    codice:
    stringadata = FormatDateTime(DateSerial(Year(Date()),Month(Date()),Day(Date())-1),2)
    stringadata così conterrà la data di ieri nel formato da te voluto.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    29
    Originariamente inviato da MItaly
    Se ho capito bene vuoi ottenere la data di ieri in formato dd/mm/yyyy; fai così:
    codice:
    stringadata = FormatDateTime(DateSerial(Year(Date()),Month(Date()),Day(Date())-1),2)
    stringadata così conterrà la data di ieri nel formato da te voluto.

    preferisco averla in yyyymmdd

    come la formatto ?

  6. #6
    In primo luogo mi sono reso conto che c'è un modo più semplice per ottenere il giorno precedente:
    codice:
    data=DateAdd("d",-1,Date())
    per cui usa il seguente codice:
    codice:
    Function GetYesterdayDate()
        Dim data,stringadata
        data=DateAdd("d",-1,Date())
        stringadata=LPad(Year(data),"0",4)
        stringadata=stringadata & LPad(Month(data),"0",2)
        stringadata=stringadata & LPad(Day(data),"0",2)
        GetYesterdayDate=stringadata
    End Function
    
    Function LPad(stringToPad, paddingChar, totalLength)
        Dim tpaddingChar
        If totalLength<=Len(stringToPad) Then LPad=stringToPad:Exit Function
        tpaddingChar=Left(paddingChar,1)
        LPad=String(totalLength-Len(stringToPad),tpaddingChar) & stringToPad
    End Function
    GetYesterdayDate ti restituisce la data di ieri nel formato yyyymmdd, mentre LPad viene usata per effettuare il padding delle varie stringhe alla lunghezza voluta.
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    29
    Originariamente inviato da MItaly
    In primo luogo mi sono reso conto che c'è un modo più semplice per ottenere il giorno precedente:
    codice:
    data=DateAdd("d",-1,Date())
    per cui usa il seguente codice:
    codice:
    Function GetYesterdayDate()
        Dim data,stringadata
        data=DateAdd("d",-1,Date())
        stringadata=LPad(Year(data),"0",4)
        stringadata=stringadata & LPad(Month(data),"0",2)
        stringadata=stringadata & LPad(Day(data),"0",2)
        GetYesterdayDate=stringadata
    End Function
    
    Function LPad(stringToPad, paddingChar, totalLength)
        Dim tpaddingChar
        If totalLength<=Len(stringToPad) Then LPad=stringToPad:Exit Function
        tpaddingChar=Left(paddingChar,1)
        LPad=String(totalLength-Len(stringToPad),tpaddingChar) & stringToPad
    End Function
    GetYesterdayDate ti restituisce la data di ieri nel formato yyyymmdd, mentre LPad viene usata per effettuare il padding delle varie stringhe alla lunghezza voluta.

    Grazie Ora funziona tutto...

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    29
    Originariamente inviato da MItaly
    In primo luogo mi sono reso conto che c'è un modo più semplice per ottenere il giorno precedente:
    codice:
    data=DateAdd("d",-1,Date())
    per cui usa il seguente codice:
    codice:
    Function GetYesterdayDate()
        Dim data,stringadata
        data=DateAdd("d",-1,Date())
        stringadata=LPad(Year(data),"0",4)
        stringadata=stringadata & LPad(Month(data),"0",2)
        stringadata=stringadata & LPad(Day(data),"0",2)
        GetYesterdayDate=stringadata
    End Function
    
    Function LPad(stringToPad, paddingChar, totalLength)
        Dim tpaddingChar
        If totalLength<=Len(stringToPad) Then LPad=stringToPad:Exit Function
        tpaddingChar=Left(paddingChar,1)
        LPad=String(totalLength-Len(stringToPad),tpaddingChar) & stringToPad
    End Function
    GetYesterdayDate ti restituisce la data di ieri nel formato yyyymmdd, mentre LPad viene usata per effettuare il padding delle varie stringhe alla lunghezza voluta.
    " Se invece volessi usare un separatore tipo _ o : ? "

  9. #9
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    Ciao, ma una cosa più semplice
    codice:
    Private Function GetYesterdayDate() As String
       GetYesterdayDate = Format(DateAdd("d", -1, Date), "yyyymmdd")
    End Function
    Jupy

  10. #10
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    sorry..avevo sbagliato a leggere il linguaggio usato.. essendo VBS non va bene la soluzione proposta..in quanto non riconosce il Format
    Jupy

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.