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

    Select e intervalli di mesi

    Ciao a tutti io ho questo rompicapo. Vorrei fare una select dinamica dove le option sono i mesi compresi tra una data di inizio ed una data finale, es. 01/11/2004 e 01/12/2004.
    La select mi dovrebbe dare:
    <option>Novembre 2004
    <option>Dicembre 2004
    ...
    <option>Novembre 2005
    <option>Dicembre 2005

    Ma scrivendo

    for i = CDate("01/11/2004") to CDate("01/12/2004")
    ...
    next

    i valori che estrae sono tutti i giorni compresi nell'intervallo, quindi + di 365 option....

    Come posso fare per fargli considerare intervalli in mesi????
    Grazie

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    For i = 10 to 12
    ...
    Next
    Roby

  3. #3
    Originariamente inviato da Roby_72
    codice:
    For i = 10 to 12
    ...
    Next
    Roby

    Ma in questo modo ottengo una select
    con tre option 10, 11 e 12 che non tiene conto del fatto che tra il 1 novembre 2004 ed il primo dicembre 2005 ci sono 13 mesi.
    E non posso neanche scrivere

    For i = 1 to 13 perchè non potrei più recuperare gli anni

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Allora non ho capito quello che devi fare...
    Quanto mesi devi mettere nella SELECT?

    Roby

  5. #5
    Allora io ho una data iniziale ed una finale (es. 01/11/2004 e 01/12/2005).
    La select dovrebbe stampare dinamicamente tutti i mesi compresi in questo intervallo quindi

    <option>Novembre 2004
    <option>Dicembre 2004
    <option>Gennaio 2005
    <option>Febbraio 2005
    ...
    <option>ottobre 2005
    <option>Novembre 2005
    <option>Dicembre 2005

    Ricavare il nome del mese non è un problema il problema è far "ragionare" il ciclo for ... next "per mesi"

  6. #6

    Per i posteri....

    Ho risolto così:


    DataInizio = "01/11/2004"
    DiffData = dateDiff("m",01/11/2004,01/12/2005)

    x = DataInizio
    for i = 1 to DiffData
    ....
    x = DateAdd("m",1,x)
    next

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 © 2026 vBulletin Solutions, Inc. All rights reserved.