Novità

*** Guida agli Script x Neofiti Totali ***

BaffoBlù

Advanced Member >GOLD<
Ciao e grazie. Perchè ottengo sempre errori nelle variabili tipo clp,ini,fin,co,es,ok etc.etc..
Vedo che questa cosa non viene detta, quindi immagino che c'è qualcosa che non va nel mio programma.
Cioè tipo ora sto facendo il run del metodo ed ottengo:
Errore script! 500-Variabile non definita: 'primodibari' Linea.........
è forse dovuto a qualche file mancate del vbscript? Come risolvere?

grazie mille
di sicuro hai copiato lo script nella maniera sbagliata...
 

joe

Advanced Member >PLATINUM PLUS<
Mi diranno, che sono veramente offensivo ... impiccione e veramente maleducato ma ...

l'unica risposta sensata è: Bisogna leggere, capire, eseguire ... le istruzioni ricevute.

Altrimenti si dimostra ed è totalmente inutile riscrivere le stesse cose ... da una parte e dall'altra.

Lo script se è quello ... ed è quello presentato da Baffoblu ... funziona.

Se non funziona è perché alla prima riga dello script che si è incollato nell'editor è rimasto scritto: Option Explicit

Questa prima linea dello script ... già presente prima di incollare lo script deve essere cancellata.

In altre parole Option Explicit ... in questo script ... non ci deve essere scritto.

:)
 

BaffoBlù

Advanced Member >GOLD<
Mi diranno, che sono veramente offensivo ... impiccione e veramente maleducato ma ...

l'unica risposta sensata è: Bisogna leggere, capire, eseguire ... le istruzioni ricevute.

Altrimenti si dimostra ed è totalmente inutile riscrivere le stesse cose ... da una parte e dall'altra.

Lo script se è quello ... ed è quello presentato da Baffoblu ... funziona.

Se non funziona è perché alla prima riga dello script che si è incollato nell'editor è rimasto scritto: Option Explicit

Questa prima linea dello script ... già presente prima di incollare lo script deve essere cancellata.

In altre parole Option Explicit ... in questo script ... non ci deve essere scritto.

:)
per me non lo sei, anzi...sei schietto.

Purtroppo dobbiamo tenere conto dei neofiti che sono alle prime armi.
sbagli del genere sono capitati anche a me all'inizio.
Ma anche adesso mi può capitare.
Una svista sta sempre dietro l'angolo, ma essendo (noi) un po' più smaliziati di altri possiamo metterci una pezza
perché sappiamo dove mettere le mani (fino a un certo punto, per quanto riguarda me)

Il neofita si trova perso anche in piccole scemenze fino a quando non capisce il meccanismo.

Di richieste e domande simili in passato ce ne sono state a migliaia...
 

joe

Advanced Member >PLATINUM PLUS<
Si diceva ... OPPURE dare una DIM(ensione) a tutte le variabili utilizzate SE E' PRESENTE OPTION EXPLICIT

Codice:
Option Explicit
Sub Main()
    ColoreTesto 1
    Scrivi "================ M E T O D O    B Y    V I V O =========",1
    ColoreTesto 0
    Scrivi "============= 1 AMBATA E 2 AMBI SU FIRENZE DOPO SPIA 11 ==============",1
    ColoreTesto 1
    Scrivi "========================F I R E N Z E =========================",1
    ColoreTesto 1
    Scrivi "============     LISTATO BY  B A F F O B L U     ============",1
    ColoreTesto 0
    Scrivi "===========================================================",1
    Scrivi
    ColoreTesto 0
    '***************************************************************************
 
    '*** NB : SE E' PRESENTE OPTION EXPLICIT (come prima linea dello script) ***
 
    'DEVONO ESSERE  DICHIARATE con DIM  *TUTTE* LE VARIABILI UTILIZZATE:
    'LE VARIABILI contenute nelle due linee qui sotto non erano DICHIARATE ESPLICITAMENTE.
  
    Dim Clp,Ini,Fin,Es,Co,P,A,Ok,Ob,o,b,c,d,e,f
    Dim Primodibari,Quartodibari,Secondodinapoli,Primodinazionale,Primodiroma

 ''**************************************************************************

    Dim ruote(1)
    Dim posta(1)
    Dim poste(2)
    Dim n(1)
    Dim am(3)
  
    posta(1) = 10
    poste(2) = 5
    Clp = 9
    Ini = EstrazioneFin - 150
    Fin = EstrazioneFin
    Co = 0
    For Es = Ini To Fin
        Messaggio Es
        ruote(1) = 3
        For P = 1 To 5
            A = Estratto(Es,3,P)
            Ok = 0
            If A = 11 Then
                Primodibari = Estratto(Es,1,1)
                Quartodibari = Estratto(Es,1,4)
                Secondodinapoli = Estratto(Es,6,2)
                Primodinazionale = Estratto(Es,12,1)
                Primodiroma = Estratto(Es,8,1)
                o = Primodibari + Secondodinapoli
                b = Fuori90(o * Primodinazionale)
                c = Primodibari * Primodiroma
                d = Fuori90(c + Primodiroma)
                e = Quartodibari * 60
                f = Fuori90(e + 77)
                n(1) = b
                am(1) = b
                am(2) = d
                am(3) = f
                Ok = 1
            End If
            If Ok = 1 Then
                Co = Co + 1
                Scrivi String(70,"°") & " Caso n°" & Co,1
                Scrivi String(70,"°"),1
                ruote(1) = 3
                ImpostaGiocata 1,n,ruote,posta,Clp,1
                n(1) = b
                ImpostaGiocata 2,am,ruote,poste,Clp,2
                am(1) = b
                am(2) = d
                am(3) = f
                Gioca Es
            End If
        Next
    Next
    ScriviResoconto
End Sub

:)
 
Ultima modifica:

mastrogino

Advanced Premium Member
Buongiorno a tutti voi e al grande Baffo
aspettavo con ansia che si riprendevano le lezioni , purtroppo x mancanza di tempo e testardaggine avevo
abbandonato.
grazie
 

joe

Advanced Member >PLATINUM PLUS<
Buongiorno a tutti voi e al grande Baffo
aspettavo con ansia che si riprendevano le lezioni , purtroppo x mancanza di tempo e testardaggine avevo
abbandonato.
grazie

Non so se è così anche per altri, ma io disapprendo i linguaggi di programmazione

se non mi esercito con continuità nel loro uso.

Fortunatamente non si tratta di una "cancellazione totale".

I rudimenti rimangono e si ritorna ai livelli precedenti, abbastanza facilmente.

Ma, il consiglio che discende dalla mia esperienza personale, è quello di mantenersi "allenati".

Ritornando a quanto si diceva ecco un semplice esempio di come produrre l'errore lamentato:

Immagine.jpg

Le 2 soluzioni già proposte sono:

O cancellare Option Explicit

O Inserire Dim A (all'inizio dello script) prima di utilizzare la variabile.

:)
 
Ultima modifica:

genios

Advanced Member >PLATINUM<
Si diceva ... OPPURE dare una DIM(ensione) a tutte le variabili utilizzate SE E' PRESENTE OPTION EXPLICIT

Codice:
Option Explicit
Sub Main()
    ColoreTesto 1
    Scrivi "================ M E T O D O    B Y    V I V O =========",1
    ColoreTesto 0
    Scrivi "============= 1 AMBATA E 2 AMBI SU FIRENZE DOPO SPIA 11 ==============",1
    ColoreTesto 1
    Scrivi "========================F I R E N Z E =========================",1
    ColoreTesto 1
    Scrivi "============     LISTATO BY  B A F F O B L U     ============",1
    ColoreTesto 0
    Scrivi "===========================================================",1
    Scrivi
    ColoreTesto 0
    '***************************************************************************
 
    '*** NB : SE E' PRESENTE OPTION EXPLICIT (come prima linea dello script) ***
 
    'DEVONO ESSERE  DICHIARATE con DIM  *TUTTE* DELLE VARIABILI UTILIZZATE:
   ' QUELLE contenute nelle due linee qui sotto non erano presenti.
  
    Dim Clp,Ini,Fin,Es,Co,P,A,Ok,Ob,o,b,c,d,e,f
    Dim Primodibari,Quartodibari,Secondodinapoli,Primodinazionale,Primodiroma

 ''**************************************************************************

    Dim ruote(1)
    Dim posta(1)
    Dim poste(2)
    Dim n(1)
    Dim am(3)
  
    posta(1) = 10
    poste(2) = 5
    Clp = 9
    Ini = EstrazioneFin - 150
    Fin = EstrazioneFin
    Co = 0
    For Es = Ini To Fin
        Messaggio Es
        ruote(1) = 3
        For P = 1 To 5
            A = Estratto(Es,3,P)
            Ok = 0
            If A = 11 Then
                Primodibari = Estratto(Es,1,1)
                Quartodibari = Estratto(Es,1,4)
                Secondodinapoli = Estratto(Es,6,2)
                Primodinazionale = Estratto(Es,12,1)
                Primodiroma = Estratto(Es,8,1)
                o = Primodibari + Secondodinapoli
                b = Fuori90(o * Primodinazionale)
                c = Primodibari * Primodiroma
                d = Fuori90(c + Primodiroma)
                e = Quartodibari * 60
                f = Fuori90(e + 77)
                n(1) = b
                am(1) = b
                am(2) = d
                am(3) = f
                Ok = 1
            End If
            If Ok = 1 Then
                Co = Co + 1
                Scrivi String(70,"°") & " Caso n°" & Co,1
                Scrivi String(70,"°"),1
                ruote(1) = 3
                ImpostaGiocata 1,n,ruote,posta,Clp,1
                n(1) = b
                ImpostaGiocata 2,am,ruote,poste,Clp,2
                am(1) = b
                am(2) = d
                am(3) = f
                Gioca Es
            End If
        Next
    Next
    ScriviResoconto
End Sub

:)
E SE LA TERZINA VOLESSSIMO GIOCARLA A TUTTE ? :)
 

lino62

Junior Member
Semplicemente ho copiato lo script del metodo ed ho avviato ed ottengo come detto nel mio precedente messaggio errori del tipo:
Errore script! 500-Variabile non definita: 'primodibari' Linea.........
Ma questo errore lo ottengo per tutte le variabili non dimensionate,i tipo clp,ini,fin,co,es,ok etc.etc.
La domanda è semplice, perchè io devo per forza fare il DIM di queste variabili quando invece nello script non ci sono e quindi immagino che lo script debba funzionare bene anche così?
di sicuro hai copiato lo script nella maniera sbagliata...
credo proprio di no

Semplicemente ho copiato lo script del metodo ed ho avviato ed ottengo come detto nel mio precedente messaggio errori del tipo:
Errore script! 500-Variabile non definita: 'primodibari' Linea.........
Ma questo errore lo ottengo per tutte le variabili non dimensionate,i tipo clp,ini,fin,co,es,ok etc.etc.
La domanda è semplice, perchè io devo per forza fare il DIM di queste variabili quando invece nello script non ci sono e quindi immagino che lo script debba funzionare bene anche così?
 

joe

Advanced Member >PLATINUM PLUS<
La domanda è semplice, perchè io devo per forza fare il DIM di queste variabili quando invece nello script
non ci sono e quindi immagino che lo script debba funzionare bene anche così?

Per inserire le istruzioni nelle righe di comando di cui si compone lo script,

è necessario adeguarsi alle regole del linguaggio di programmazione.

Esattamente utilizzando la sintassi corretta, come si fa con chiunque

al quale si vogliono trasmettere dei concetti si usa il modo corretto per comunicarli.

Dimensionare e predisporre le variabili è utile per avere uno script più ordinato,

più facilmente correggibile ed anche più veloce.

Perché può essere utilizzata meno memoria e perché è meno probabile

che si utilizzino le stesse variabili per contenere valori logicamente diversi o sbagliati.

Per esempio nello script logica vorrebbe che i 5 estratti fossero a, b, c, d, e.

Però la lettera "a" era già utilizzata.

Pertanto è stata sostituita da "o" .. Perché il programmatore è stato attento a non ri-utilizzare la "a".

Però, è evidente che è più facile sbagliarsi e magari, a distanza di tempo, è più difficile ricordare che la "o"

è la "prima lettera" e poi le altre di seguito sono b, c, d, e.

Oppure se ci si dimentica che "a" contiene già un valore, e lo si sostituisce erroneamente con quello dell' Estratto.

In sintesi, se non si pianifica l'utilizzo delle variabili è più facile commettere errori.

:)
 
Ultima modifica:

BaffoBlù

Advanced Member >GOLD<
Semplicemente ho copiato lo script del metodo ed ho avviato ed ottengo come detto nel mio precedente messaggio errori del tipo:
Errore script! 500-Variabile non definita: 'primodibari' Linea.........
Ma questo errore lo ottengo per tutte le variabili non dimensionate,i tipo clp,ini,fin,co,es,ok etc.etc.
La domanda è semplice, perchè io devo per forza fare il DIM di queste variabili quando invece nello script non ci sono e quindi immagino che lo script debba funzionare bene anche così?

credo proprio di no

Semplicemente ho copiato lo script del metodo ed ho avviato ed ottengo come detto nel mio precedente messaggio errori del tipo:
Errore script! 500-Variabile non definita: 'primodibari' Linea.........
Ma questo errore lo ottengo per tutte le variabili non dimensionate,i tipo clp,ini,fin,co,es,ok etc.etc.
La domanda è semplice, perchè io devo per forza fare il DIM di queste variabili quando invece nello script non ci sono e quindi immagino che lo script debba funzionare bene anche così?
Io invece credo proprio di SI.

L'unico modo per replicare il tuo errore,
RIBADISCO (l'UNICO MODO) è QUELLO DI NON INSERIRE LO SCRIPT NEL MODO CORRETTO!

NON ESISTE UN ALTRA MANIERA...

TE LO SPIEGATO E ANCHE JOE HA DETTO COSE GIUSTISSIME.

io ti consiglierei di rivedere quello che stai tentanto di fare, convinto di non sbagliare...

siamo qui per aiutare, ne sappiamo più di te, ma se ti intestardisci, capisci da solo che non possiamo andare contro le tue convinzioni di essere nel giusto.

La domanda che ti devi fare :

PERCHE' SEI L'UNICO A CUI NON FUNZIONA???
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 30 aprile 2024
    Bari
    08
    67
    03
    02
    46
    Cagliari
    67
    01
    87
    84
    47
    Firenze
    31
    56
    40
    53
    50
    Genova
    03
    19
    45
    47
    25
    Milano
    71
    48
    51
    12
    13
    Napoli
    45
    19
    49
    76
    56
    Palermo
    58
    74
    86
    37
    67
    Roma
    26
    79
    47
    38
    58
    Torino
    32
    71
    39
    84
    80
    Venezia
    52
    31
    22
    42
    19
    Nazionale
    06
    83
    47
    20
    41
    Estrazione Simbolotto
    Genova
    03
    05
    45
    40
    19
Alto