![](https://cdn.wiki-base.com/7729397/excel_formula_round_a_number_to_n_significant_digits__2.png.webp)
Üldine valem
=ROUND(number,digits-(1+INT(LOG10(ABS(number)))))
Kokkuvõte
Kui peate numbri ümardama määratud numbrite või arvude antud (muutuva) arvuni, saate seda teha elegantse valemiga, mis kasutab funktsioone ROUND ja LOG10.
Näidatud näites on valem D6-s järgmine:
=ROUND(B6,C6-(1+INT(LOG10(ABS(B6)))))
Selgitus
See võib olla hirmutav valem, kui teil pole matemaatikas head tausta, kuid töötame selle järk-järgult läbi.
Esiteks, kui teil on selline valem, kus üks funktsioon (antud juhul ÜMBER) ümbritseb kõiki teisi, on sageli kasulik töötada väljastpoolt. Seega ümardab see valem B6 väärtust ümaraga funktsioon:
=ROUND(B6,x)
Kus x on nõutavate oluliste numbrite arv. Selle valemi keeruline osa on arvutada x. See on muutuja, sest see muutub sõltuvalt ümardatavast arvust. x arvutatakse selle bitiga:
C6-(1+INT(LOG10(ABS(B6))))
See tundub keeruline, nii et vaatame kõigepealt, kuidas antud näidete korral peab valem töötama. Pidage ROUND-iga meeles, et kümnendkoha vasakul küljel töötab negatiivne arv numbreid. Nii et 1234567 ümardamiseks kasvava arvu oluliste numbriteni oleks meil:
=ROUND(1234567,-6) = 1000000 // 1 sig. digit =ROUND(1234567,-5) = 1200000 // 2 sig. digits =ROUND(1234567,-4) = 1230000 // 3 sig. digits =ROUND(1234567,-3) = 1235000 // 4 sig. digits
Niisiis, peamine probleem on see, kuidas arvutada -6, -5, -4 ja nii sõltuvalt ümardatavast arvust.
Peamine on mõista, kuidas neid numbreid eksponentide abil saab väljendada, nagu teaduslikus tähistuses:
=ROUND(1234567,-6) = 1000000 = 1.0*10^6 =ROUND(1234567,-5) = 1200000 = 1.2*10^6 =ROUND(1234567,-4) = 1230000 = 1.23*10^6 =ROUND(1234567,-3) = 1235000 = 1.235*10^6
Pange tähele, et eksponent on kõigil juhtudel 6, mis määratakse selle bitiga:
INT(LOG10(ABS(B6)))
Niisiis kasutab ülejäänud valem lihtsalt arvutatud eksponentväärtust, et välja selgitada õige number, mis annab ÜMBER, sõltuvalt soovitud oluliste numbrite arvust:
=ROUND(1234567,-6) // 1-(1+6) = -6 =ROUND(1234567,-5) // 2-(1+6) = -5 =ROUND(1234567,-4) // 3-(1+6) = -4 =ROUND(1234567,-3) // 4-(1+6) = -3
Kokkuvõttes:
- ABS teisendab väärtuse absoluutseks (positiivseks) väärtuseks
- LOG10 saab eksponendi, antud juhul kümnendväärtusega 6
- INT kärbib eksponendi kümnendkoha
- Valem kasutab eksponenti ja kaasasolevaid olulisi numbreid, et välja selgitada õige arv numbreid, et anda ROUND
- ROUND ümardab numbri, kasutades tarnitud numbrite arvu