Oppure

Loading
07/05/10 7:28
piter123
salve, avrei bisogno di generare una matrice di date.
Ogni singolo campo dovrebbe corrispondere al terzo venerdi di ogni mese all' interno di un intervallo di date, esempio tra oggi e il 31/12/2014

esempio il risultato dovrebbe essere il seguente:

dato(0)="16/07/2010"
dato(1)="20/08/2010"
dato(2)="17/09/2010"

e così via fino al 31/12/2014

dato(n)="19/12/2014

mille grazie
aaa
07/05/10 7:46
nessuno
Ma non hai nessuna idea? Nessun codice di prova?
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
07/05/10 13:11
piter123
eheheh, purtroppo no, mi manca l'idea di progettazione, partire da un calendario perpetuo?
partire da un terzo venrdì conosciuto e aggiungergi i giorni di di ogni mesi diviso 7, non saprei, le mie idee mi sembrano tanto banali e lacunose
aaa
07/05/10 15:14
Alfonso
Imposti il primo giorno del mese
con weekday guardi che giorno della settimana è
aggiungi in numero di giorni per arrivare al primo venerdì
aggiungi ancora 14 giorni ed hai il terzo venerdì

Dim oggi As Date
Dim PrimoGiornoMese As String
Dim g As Integer, PrimoVenerdì As Integer
oggi = Date

Do While Year(oggi) < 2015
    PrimoGiornoMese = "01/" & Format(Month(oggi), "00") & "/" & Format(Year(oggi), "00")
    g = Weekday(PrimoGiornoMese, vbMonday) ' vbMondayvbSunday)
    ' considera che venerdì è il 5° giorno della settimana
    Select Case g
        Case Is < 5
            PrimoVenerdì = 5 - g
        Case Is = 5
            PrimoVenerdì = 0
        Case Is > 5
            PrimoVenerdì = 7 - g + 5
    End Select
        g = g + 14
    List1.AddItem DateAdd("d", g, PrimoGiornoMese)
    oggi = DateAdd("m", 1, PrimoGiornoMese)
Loop
Ultima modifica effettuata da Alfonso 07/05/10 15:14
aaa