Newsgroup: it.comp.lang.visual-basic
Titolo: Sub nel modulo....

Devo fare una sub comune a tutto il mio programma per un controllo di
caratteri su una stringa.
La stringa si chiama Data e vorrei richiamare la sub in un text1.change. Io
ho provato a scrivere nel modulo:
Public sub ControllaData ()
    .....
    .....
End sub
e richiamo cosě
Public sub ControllaData ()
Sbaglio ?
La stringa controllata deve essere dichiarata come variabile nel modulo o la
devo inserire tra le parentesi quando richiamo ?
Es. Public sub ControllaData (Data as string).. ?
devo anche dichiararla tra le parentesi della sub nel modulo?
Grazie a tutti Giacomo 
ande...@tin.it

Sbaglio ?
Sě.
Per richiamare una sub/function devi usare una di queste due sintassi:
1) Call MySub_Function(parametri)
2) MySub_Function parametri
3) per le function se non vuoi buttar via il risultato in alternativa alla
(1) devi fare
    Result = MyFunction(parametri)
Ciao

devo anche dichiararla tra le parentesi della sub nel modulo?
Se vuoi che la tua Sub sia visibile in tutto il programma, devi dichiararla come Public in un modulo standard; se la
dichiari come Public in un form è visibile in tutte le procedure di quel form ma non all'esterno del form stesso (come
se la dichiarassi Dim o Private, con la differenza che dichiarandola con Public questa è visibile come se fosse un
metodo di quella form)
Per richiamare una procedura, basta digitare il sui nome:
ControllaData
seguito da eventuali parametri.
I Parametri vengono definiti in sede di definizione della procedura stessa:
Public Sub ControllaData(Data AS String)
In questo caso, Data la considererò come se fosse una normale variabile all'interno di quella procedura, solo che
ottiene già da subito il valore passatogli: ad esempio:
ControllaData "18/06/1999"
Nella funzione ControllaData, Data avrà valore "18/06/1999"
Quindi non è necessario dichiarare una variabile pubblica: poiché Data ti serve esclusivamente all'interno della
procedura, l'uso di un parametro è il metodo più corretto.
Per chiamare la procedura, puoi utilizzare anche l'istruzione Call, solo con la differenza che i parametri devi
includerli tra parentesi:
Call ControllaData ("18/06/1999")
Un discorso analogo va fatto per le funzioni, con l'unica differenza che di solito le funzioni ritornano un valore, per
tanto verranno dichiarate
Public [Private] Function ControllaData (Data As String) As Boolean
In questo esempio, il parametro in ingresso è sempre la solita stringa Data, ma quell' "As Boolean" in fondo significa
che il valore ritornato della funzione è di tipo boolean.
Qual'è il valore ritornato della funzione?
Quello che si assegna ala funzione stessa: esempio:
Public [Private] Function ControllaData (Data As String) As Boolean
	If Data="18/06/1999" Then
		ControllaData=True
	else
		ControllaData=False
	end IF
End Function
Per chiamare la funzione, visto che questa ritornerà un valore, basta associarla ad una variabile (nell'esempio di tipo
booleano, visto che tale è il tipo di valore ritornato dalla funzione):
dim pippo as boolean
pippo=ControllaData("01/01/1999")
Nell'esempio, Pippo sarà False.
Spero di esserti stato d'aiuto,
Ciao,
Moreno
#sirri#@
tin.it
(togliete "#" dall'indirizzo)
---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
 
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------