Novità

x LuigiB ... strano comportamento di una semplice funzione

gennaro

Senior Member
Salve Sig Luigi, volevo sottoporle qst semplice script ed analizzare il mio output ... (SM v1.3.40)

Codice:
Sub Main()


    For estr = EstrazioneFin To EstrazioneFin - 30 Step - 1


        Call CheGiornoE(estr,NomeGiorno)
        Scrivi estr & " " & NomeGiorno & " " & DataEstrazione(estr)


    Next 'estr


End Sub






Function CheGiornoE(idEstr,GetCheGiornoE_Nome) 'by LuigiB, adapted by Gennaro
    Dim sData
    sData = Replace(DataEstrazione(idEstr),".","/")
    Select Case WeekDay(sData)
    Case 3
    GetCheGiornoE_Nome = "Mar"
    Case 5
    GetCheGiornoE_Nome = "Gio"
    Case 7
    GetCheGiornoE_Nome = "Sab"
    End Select
End Function

mi fornisce...

Codice:
[FONT=Courier New][SIZE=2][COLOR=#000000]8499 Mar 21.02.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8498 Sab 18.02.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8497 Gio 16.02.2012
[/COLOR][/SIZE][/FONT][U][B][FONT=Courier New][SIZE=2][COLOR=#000000]8496 Mar 14.02.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8495 Mar 11.02.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8494 Mar 09.02.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8493 Mar 07.02.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8492 Mar 04.02.2012
[/COLOR][/SIZE][/FONT][/B][/U][FONT=Courier New][SIZE=2][COLOR=#000000]8491 Gio 02.02.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8490 Mar 31.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8489 Sab 28.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8488 Gio 26.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8487 Mar 24.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8486 Sab 21.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8485 Gio 19.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8484 Mar 17.01.2012
[/COLOR][/SIZE][/FONT][U][B][FONT=Courier New][SIZE=2][COLOR=#000000]8483 Sab 14.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8482 Sab 12.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8481 Sab 10.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8480 Sab 07.01.2012
[/COLOR][/SIZE][/FONT][/B][/U][FONT=Courier New][SIZE=2][COLOR=#000000]8479 Mar 05.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8478 Gio 03.01.2012
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8477 Sab 31.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8476 Gio 29.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8475 Mar 27.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8474 Sab 24.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8473 Gio 22.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8472 Mar 20.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8471 Sab 17.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8470 Gio 15.12.2011
[/COLOR][/SIZE][/FONT][FONT=Courier New][SIZE=2][COLOR=#000000]8469 Mar 13.12.2011
[/COLOR][/SIZE][/FONT]

...cosa accade ? eheheheh sbaglio qlkosa?
 
ciao qualche errore ineffetti c'è ma solo sul concetto di funzione , mi spiego le funzioni devono tornare un risultato senno tanto vale fare una sub.
Tu il risultato lo fai tornare dentro un parametro che passi alla funzione stessa.
Tuttavia questo errore non dovrebbe pregiudicare il risultato , ad ogni modo l'istruzione WeekDay è del vbscript non di spaziometria.
Qui in ufficio non ho il programma controllero meglio da casa.
 
ok, appena puo'...

... quello e' il mio solito errore di concetto a cui provvedero' :)

Usando il weekday da solo, sembra funzionare

Codice:
Sub Main()
	For n = 1 To 10
		Scrivi WeekdayName(WeekDay(n))
		Scrivi
	Next 'estr
End Sub
 
Ok, ora contempliamo tutti i modi..

Codice:
  Sub Main()
 For n = 0 To 10
  Scrivi Now + n
  Scrivi WeekDay(Now + n)
  Scrivi WeekdayName(WeekDay(Now + n))
  Scrivi("---")
 Next 'n
End Sub

PS: Filosofeggio solo per fissare in testa le basi di VB (per le procedure e le funzioni ... devo scrivere una PAGINETTA in stampatello ed una in corsivo ;)
 
Ultima modifica:
ehi Gennaro non fare esperimenti , semmai prima documentati sull'help del vbscript ...
now + n non significa nulla .... per sommare valori a date ci sono funzioni apposta !
 
Ho isolato un caso emblematico per lo studio di tutti...

Codice:
 Sub Main()
 Scrivi("Il 04/02/2012, usando le funzioni del VB, era " & WeekDayName(WeekDay(CDate(04/02/2012))))
 Scrivi
 Scrivi("Adesso calcoliamolo dal n° estrazione che era 8491")
 estr = 8491
 appo = DataEstrazione(estr)
 Scrivi estr & " " & appo & " ed era " & WeekDayName(WeekDay(Replace(appo,".","/")))
End Sub
 
Luigi, forse ho scoperto ... la nostra data è GG/MM/AAAA invece VB ragiona in MM/GG/AAAA ...
Sto diventando più pignolo di Joe hihihihii
 
Sperando di non essere tedioso, ma costruttivo... ecco la controprova :)

Codice:
 Sub Main()
 Scrivi("Il 04/02/2012, usando le funzioni del VB, era " & WeekDayName(WeekDay("02/04/2012")))
 Scrivi
 Scrivi("Adesso calcoliamolo dal n° estrazione 8491")
 estr = 8491
 appo = DataEstrazione(estr)
 Scrivi estr & " " & appo & " ed era " & WeekDayName(WeekDay(Replace(appo,".","/")))
 Scrivi
 Scrivi("Facciamo controprova mettendo la data nella forma MM/GG/AAAA")
 datamia = Mese(estr) & "/" & giorno(estr) & "/" & Anno(estr)
 Scrivi datamia
 Scrivi WeekDayName(WeekDay(CDate(datamia)))
End Sub
 
ciao Gennaro , dipende dalle impostazioni di sistema come ragiona vb.
Su un pc configurato seguendo le regole di data usate in italia
questo script lanciato oggi restituisce 22/02/2012 18.19.50
Ti consiglio di modificare le impostazioni perche potrebbero esserci problemi trasversali.


Option Explicit
Sub Main
Scrivi Now
End Sub
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 05 luglio 2025
    Bari
    25
    89
    22
    77
    56
    Cagliari
    05
    87
    46
    70
    49
    Firenze
    17
    85
    66
    59
    54
    Genova
    90
    65
    07
    44
    62
    Milano
    60
    84
    26
    78
    43
    Napoli
    71
    78
    86
    76
    84
    Palermo
    23
    42
    82
    60
    88
    Roma
    86
    60
    85
    19
    01
    Torino
    59
    30
    54
    29
    60
    Venezia
    90
    20
    71
    03
    81
    Nazionale
    70
    36
    74
    27
    38
    Estrazione Simbolotto
    Nazionale
    02
    32
    40
    16
    19
Indietro
Alto