Newsgroup: it.comp.appl.access
Titolo: info su variabili, per esperti?

Info sulle variabili
Se ho due sub private dentro lo stesso modulo e uso ad esempio 2
variabili sempre con identico nome:
Private Sub A click()
      Dim variabile1
      Dim variabile2
End Sub
Private Sub B click()
     Dim variabile1
     Dim variabile2
End Sub
1) mi sembra che, comunque esse sono interne ognuna alla propria routine
o sbaglio, cioè non esiste nessuna possibilità di interazione di una
variabile di una routine con l’altra; chiedo questo perché dovendo avere
più routine simili, volevo copiarne una ma senza cambiare per ogni
routine i nomi alle variabili.è così?
----------------------------------------------------------------------------------------------------------------------------------------
Inoltre, considerando la sub:
Private Sub A click()
      Dim var_1
      Dim var_2
      var_1=10
      var_2=5
End Sub
2) ogni volta che parte la sub, nel mio caso al click, cosa succede alle
variabili (var): siccome all’inizio ho comunque Dim, praticamente la
variabile viene sempre e comunque riazzerata? cioè al click:
1- prima dichiaro la var
2- poi assume ad esempio un valore 10 da codice e quando arrivo ad end
sub, la procedura è finita e quindi dentro al Pc rimane in memoria una
var_1=10 associata alla routin A, dico questo perché se ho un’altra
routin B
         con lo stesso nome di variabile a cui ho dato valore 9 allora
dentro memoria pc anche una var_1=9 associata
         alla routin B. è così?
 3-     poi se riclicco praticamente cosa succede, ipotizzo:
         la mia var_1=10 come l’avevo lasciata uscita dalla sub, siccome
incontra una Dim di se praticamente ritorna a
         null oppure con dim non si azzera?
3) è quindi sempre meglio mettere prima di uscire un null sulle
variabili usate ?
Private Sub A click()
     Dim var_1, Dim var_2
     var_1=10 , var_2=5
      …………codice
     var_1 = null , var_2 = null
End Sub
----------------------------------------------------------------------------------------------------------------------------------------
1) Sempre dentro ad una sub private, se richiamo una funzione public
scritta in un modulo, le variabili della sub possono interferire con le
variabili dentro la funzione. Ci sono dei casi in cui può succedere?
es. in un modulo ho
Public Function xxx (a,b)
             Dim var_1 , Dim var_2
             ……….codice
End Function
e poi nel codice di una maschera
Private Sub A click()
            Dim var_1, Dim var_2
             ………codice con dentro il richiamo alla funzione xxx
End Sub

[CUT]
Scusa se ho tagliato tutto il post...!
Le variabili vengono reinizializzate ogni volta che vengono DIMensionate.
Quando le variabili vengono dichiarate all'interno di una Sub o Function
hanno effetto solo quando quest'ultima viene richiamata, non è possibile
vengano a crearsi conflitti, è però vero che un Buon programmatore evita
queste casualità.
Poi, credo  ti convenga capire meglio quando usare SUB piuttosto che
Function.
Perchè poi realizzare Routine uguali, quando si programma si deve
razionalizzare al massimo il codice in modo da renderlo Generalizzato.
Una Routine(Sub o Function) che sia non ha senso che venga duplicata
se è uguale, basta impostarla o predisporla a ricevere e restituire(Function)
i risultati dell'elaborazione...!
N.B.
Quì sono tutti esperti quando sanno rispondere alle domande...!
@Alex
-- 
Posted from  [62.98.30.128] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 queste casualità.
però quando finisce la sub si annullano o rimangono comunque con il valore
assegnato
e poi se riparte la sub sono reinizializzate (cioè rimesse a 'zero' e pronte per
riaccettare
un valore)

 un valore)
Le variabili DIMensionate internamente a SUB o Function iniziano e finiscono
con la SUB o Function, non è concepibile pensare "rimangono comunque", perchè
sono terminate ed inaccessibili.
L'inizializzazione delle Variabili si ha con l'istruzione DIM.
@Alex 
-- 
Posted from  [146.133.1.30] 
