Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2004
    Messaggi
    855

    VBA arrotondamento numero

    Salve, mi serve arrotondare un numero ai dieci euro in eccesso. Cioè:
    971,80 deve diventare 980,00
    975,00 pure deve diventare 980,00
    979,16 pure deve diventare 980,00

    Come fare?

    Ho fatto così e funziona a metà cioè quando i decimali della variabile rn sono sopra il 5:

    rn = Round(rn, 0)
    rn = rn / 10
    rn = Round(rn, 0)
    rn = rn * 10

    Al limite c'è un'istruzione che arrotonda sempre in eccesso al posto di Round?

    Ciao e grazie.

  2. #2
    Prova questa funzione:
    codice:
    Public Function Round2(value, nd As Integer)
        Dim n
        
        n = value * (10 ^ nd)
        n = -Int(-n)
        Round2 = n / (10 ^ nd)
    End Function
    Puoi usarla al posto della funzione Round, con la differenza che puoi usare valori negativi per nd:
    Round2(981.17, 2) ---> 981.17
    Round2(981.17, 1) ---> 981.2
    Round2(981.17, 0) ---> 982
    Round2(981.17, -1) ---> 990
    Round2(981.17, -2) ---> 1000
    Chi non cerca trova.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.