Newsgroup: it.comp.appl.access
Titolo: variabile nome richiamo sub

Ciao, vorrei creare una procedura che da una casellacombinata posso
selezionare ed eseguire un'altra procedura.
Es:
la casella combinata presenta una lista di descrizioni di alcune procedure,
dopo averla selezionata vorrei eseguire una sub, ma nn sò come passare la
variabile con il nome della sub.
se richiamo la sub in questo modo mi dà errore:
Call nomevariabile
Ciao grz by Logan bye bye

 Call nomevariabile
Un modo diretto non l'ho trovato, ma risolvi con un case select sul valore
selezionato e quindi con tante chiamate diverse di funzione
Antonio

 ha scritto nel messaggio
news:7r5H9.53294$2B1.1...@twister2.libero.it...

Prova a vedere la funzione EVAL..........!!!
@Alex.

 @Alex.
C'avevo provato anch'io ma in questo caso non ha funzionato
Antonio

 Antonio
Ciao Antonio, sinceramente non ho provato con la chiamata a funzioni,
ma è stato un argomento dibattuto l'anno scorso....!
Mi pare che con:
Dim i as integer
i=Eval(StringaNomeFUNC & "()"
potrebbe andare................!!!
Non ne sono sicuro..............!!
@Alex.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Non ne sono sicuro..............!!
A me non va...
Antonio

 Antonio
Ecciai RAGGIONE.....!!!
Eppur si muove dice l'HELP.
L'esempio dell'HELP è chiarissimo, ma UNVA', e se UNVA' UNVA'...!
Non sò che dire.....!


 ha scritto nel messaggio
news:f3632d8b8a0ac35833...@mygate.mailgate.org...

Ho provato anch'io ma nn funzia neanche a me ...
Grz ad entrambi.
Qualche altro suggerimento??
Ciao by Logan bye bye

 Ciao grz by Logan bye bye
Se la lista della casella combinata contiene i valori:
Procedura1
Procedura2
Se scegliendo Procedura1 deve essere eseguita la funzione chiamata Pippo e
se scegliendo la Procedura2 deve essere eseguita la funzione Pluto, se la
casella combinata si chiama MiaCombo, a fronte dell'evento "Dopo
aggiornamento" di MiaCombo prova con:
Private Sub MiaCombo_AfterUpdate()
Select Case MiaCombo
Case "Procedura1"
    Call Pippo
Case "Procedura2"
    Call Pluto
Case Else
    MsgBox "Procedura inesistente"
End Select
End Sub
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 Qualche altro suggerimento??
Nella prima risposta che hai ricevuto, fatta da me, c'era una soluzione
alternativa!!!
Antonio

 > se richiamo la sub in questo modo mi dà errore:

Scusate nn mi sono spiegato bene, vorrei creare una casella combinata che
prenda un elenco di procedure da una tabella e vorrei passare alla sub il
nome selezionato dalla casella combinata per eseguire la funzione
ES
Tabella proc
proc1
proc2
proc3
la procedura che viene eseguita dopo la selezione della casella combinata
dovrebbe essere qlc di questo tipo
call casellacombinata


 call casellacombinata
ma scusa eh?
Ma che differenza ti fa se fai
if casellacombinata = "Fun1" then
  call fun1
elseif casellacombinata = "Fun2" then
  call fun2
else
if casellacombinata = "Fun3" then
  call fun3
end if
Eh?
Antonio


Se proc1, proc2 e proc3 sono i nomi di altrettante funzioni utente
registrate in uno o più moduli del tuo database, se la casella combinata si
chiama MiaCombo, a fronte dell'evento "Dopo aggiornamento" di MiaCombo
genera la seguente riga di codice VBA:
Private Sub MiaCombo_AfterUpdate()
Eval (MiaCombo & "()")
End Sub
Per maggiori dettagli leggiti cosa dice l'help riguardo la Funzione Eval ed
in modo particolare leggiti come va passato il nome di una funzione (user o
intrinseca che sia) alla funzione Eval.


 ha scritto nel messaggio
news:vN5H9.53404$2B1.1...@twister2.libero.it...

Prova con :
Eval(NomeCombo & ())
Per maggiori dettagli vedi l'help relativamente alla funzione Eval.


 ha scritto nel messaggio
news:f3632d8b8a0ac35833...@mygate.mailgate.org...

C'eri abbastanza vicino. ;-)
Prova con :
Eval (NomeCasellaCombinata & "()")



Scusami, volevo scrivere:
Eval (NomeCasellaCombinata & "()")
--


 ha scritto nel messaggio
news:izGH9.59873$2B1.1...@twister2.libero.it...

Ok funzia
Grz 1000
