
Originariamente inviata da
Max-Man
A me basterebbe sapere come fare una cosa di questo tipo:
Nella maschera "chiamante" scrivo un valore in un campo e automaticamente, (tramite codice), tale valore dovrà essere passato alla funzione o routine che dovrà interpretarlo che, altrettanto automaticamente dovrà spedire alla maschera chiamante un valore di ritorno.
Allora dimentichiamoci per il momento dell'Iva e facciamoil classicissimo esempio dell'area del rettangolo
dove in una tabella metti i valori della base e altezza che vengono prelevati da una funzione personalizzata
che restituisce a sua volta la superficie a una query o maschera.
- Crea una tabella di nome "Rettt" ( con 3 t )
( io seguo delle regole particolari per la nomenclatura )
---- Base --- Numerico
---- Alte --- Numerico
- Crea un nuovo modulo di nome qiello che vuoi con questo codice ( è gia commentato )
codice:
Public Function AreaRett(Bbb As Integer, Hhh As Integer) As Integer
' questa funzione richiede in ingresso:
' Bbb ( base ) come numero intero
' Hhh ( altezza ) come numero intero
' Questa funzione restituisce il prodotto di Bbb x Hhh come numero intero
' la puoi richiamare in uma query con AreaRett([Rettt]![Base],[Rettt]![Alte]) AS AreaR
' la puoi richiamare in una maschera con =AreaRett([Base];[Alte])
AreaRett = Bbb * Hhh
End Function
- Crea una query di nome "Retqq"
codice:
SELECT
Rettt.Base,
Rettt.Alte,
AreaRett([Rettt]![Base],[Rettt]![Alte]) AS AreaR
FROM
Rettt
;
- Crea una maschera associata alla query "Retqq"
Crea un' altra maschera associata alla tabella "Rettt" e ci metti dentro
due caselle di testo con queste formule:
=AreaRett([Base];[Alte])
=AreaRett(8;3)
Eventualmente se il tuo problema era questo dopo torniamo all' Iva
Facci sapere