ciao Gianphy,
credo sia da sottolineare il tentativo che hai effettuato di risolvere il problema in autonomia con la funzione che hai proposto, che però è concepita ….male....effettui un tentativo di validazione dell'input, ma non è corretto procedere in tal modo, poi
dividi e moltiplichi per lo stesso numero...
la funzione che ti ho proposto da me restituice quanto segue :
? myround(18.7883,3)
18,788
? myround(18.785,2)
18,79
? myround(18.78,1)
18,8
Apri VBE editor inserisci un modulo nuovo, copia/incolla il codice proposto, salva e attiva la finestra immediata e testala come vedi qui sopra.
Ovvio che puoi utilizzarla anche in una query, passando il valore da arrotondare alla funzione stessa ed il relativo numero di decimali, al posto del valore numerico avrai un campo oppure un'operazione matematica.
Se ottieni errori di qualche tipo il problema è altrove….lancia un debug sempre dalla finestra del VBE ( debug e compila database ) correggi gli errori e riprova.
Controlla anche in strumenti ---> riferimenti se qualche libreria mostra il warning MANCA, e di conseguenza metti la spunta a tutte che mostrano questa caratteristica.
Facci sapere.
Ciao, Sandro.
Innanzitutto grazie sempre.
Ho inserito un modulo nuovo, copiato/incollato il codice da te proposto, salvato e attivata la finestra immediata; al test compare pop-up: Errore di compilazione: Prevista variabile o routine e non modulo.
Al tentativo di Debug, dopo aver selezionato tutte le righe di codice, compare invece altro pop-up: L'espressione di controllo selezionata non è valida
Infine, nei Riferimenti, trovo la spunta solamente alle prime 4 voci e cioè:
- Visual Basic For Applications
- Microsoft Access 16.0 Object Library
- OLE Automation
- Microsoft Office 16.0 Access database engine Object Library
Tutto il resto non è spuntato nè rinvengo alcun Warning tipo MANCA.
Mi spiace, sono molto carente in VBA ed altro non saprei proprio fare, a stento riesco a seguire le tue indicazioni. Credo proprio che dovrò rinunciare e tentare di scrivere una qualche espressione direttamente nella query (se ne sono capace).