Kamusta kayong lahat.
Ito si Enta.
Naranasan mo na ba na mag-compile ng kabuuang bilang sa Excel, at napagtanto mong kapag pinagsama-sama mo na lahat, may 1 yen na diperensya kumpara sa iyong manwal na pagkalkula?
Kahit sa pagkalkula ng gastos para sa mga gawaing pang-bakil, kung patuloy mong inilalapat ang mga pormula tulad ng 'lugar × presyong yunit × VAT',Palaging may diperensya ng 1 yen o 1 m² sa huling linya.Ito ay isang penomenon.
Hindi ito bug sa Excel, pero…IEEE 754: ang pandaigdigang pamantayan para sa mga floating-point na numeroKaya nga, lol
Na-irita talaga ako dito dati at inalam ko ito, kaya naisip kong ibahagi ito sa inyo lol
Gayunpaman, hindi ba karaniwan na ginagamit ng mga tao ang Excel para sa mga kalkulasyon ngayon?
Tagahanga pa rin ako ng Excel!
Halos lahat ng bagay ay kaya nitong gawin, kaya... lol
Ngunit hindi iyon ang punto.
Sa pagkakataong ito,Ang tunay na kalikasan ng akumulatibong pagkakamali sa pag-rounding na nangyayari sa Excel (at sa maraming iba pang mga programa sa software),Spesipikasyon ng IEEE 754 para sa Dobleng-Tumpak na Floating-PointKaya,
Ang tamang alternatibong solusyon gamit ang function na ROUNDIpapaliwanag ko ang aking karanasan sa pakikipaglaban sa pagkalkula ng dami.
Dahil malinaw itong nakasaad sa opisyal na dokumentasyon ng Microsoft, ang pinagmulan ay 100%—walang duda tungkol dito.

Ang Katotohanan sa Likod ng mga Kakaiba ng Excel | Ang Pamantayang IEEE 754
Sa madaling sabi,Ang mga pagkakamali sa pagkalkula sa Excel ay hindi mga bug, kundi resulta ng mahigpit na pagsunod sa pamantayang IEEE 754 para sa aritmetika ng floating-point.Iyon na.
Medyo parang 'Ha?' na sandali ito, hindi ba?
Sinabi ng Microsoft ang sumusunod tungkol sa katumpakan ng pagkalkula ng Excel: Ang Microsoft Excel ay idinisenyo alinsunod sa espesipikasyon ng IEEE 754, na tumutukoy kung paano iniimbak at kinakalkula ang mga floating-point na numero. Maaaring mag-imbak ang Excel ng mga numero mula 1.79769313486232E308 hanggang 2.2250738585072E-308, ngunitAng bilang ng makabuluhang digit ay dapat 15 o mas kaunti.ay limitado sa.
Sa madaling salita, ang Excel ay panloob na...Lahat ng halaga ay hinahawakan sa binaryo.Kaya, kapag nagko-convert ng isang bilang na nakasulat sa desimal patungo sa binary,Maling pag-a-bilugan...ay ipinanganak.
Ang diwa ng penomenong ito ay ang mga epekto nito ay tumitipon habang paulit-ulit na isinasagawa ang mga kalkulasyon.
Bakit nagkakaroon ng error kapag nagko-convert mula sa decimal papunta sa binary?
Isang may hangganang desimal na bilang gaya ng '0.1',Sa binaryo, nagreresulta ito sa isang paulit-ulit na desimal na nagpapatuloy nang walang katapusan.Ito ang sanhi.
| Desimal | Binary na representasyon | Mga tala |
|---|---|---|
| 0.5 | 0.1 | maaaring ipahayag ito nang perpekto |
| 0.25 | 0.01 | maaaring ipahayag ito nang perpekto |
| 0.1 | 0.0001100110011… (paulit-ulit) | Walang katapusang loop, naganap ang pagkakamali sa pag-aayos ng bilog |
| 0.2 | 0.0011001100110… (paulit-ulit) | Ibid. |
| 0.3 | 0.0100110011001… (paulit-ulit) | Ibid. |
Sa IEEE 754 na dobleng presisyon (64-bit), ang paikot na ito ay walang katapusan.Itago pagkatapos i-truncate sa isang tiyak na bilang ng mga digit.Dahil dito, nagkakaroon ng bahagyang pagkakamali (mga ±2.8 × 10⁻¹⁷) (Microsoft Learn).

Mga Espesipikong Halimbawa | Karaniwang Pagkakaiba sa Excel
Kinakailangang Kaalaman | Ang Kahulugan ng TOTOO at BAKO
Bago tayo lumipat sa ilang partikular na halimbawa sa Excel… TOTOO / BAKA Tatalakayin natin ito.
Medyo huli na ngayon, pero dahil ito ay napakahalaga para sa lahat, talagang dapat mong siguraduhin na tandaan mo ito!
Sa Excel '=', '>' at '<' Kung gagamitin mo ito, ang magiging resulta ay TOTOO (totoo, pantay, nanatiling totoo) か MALI (mali; hindi pantay; hindi totoo) ...at bumabalik ito.
| Pormulang matematikal | Kahulugan | Mga resulta |
|---|---|---|
=1=1 |
Ang 1 ba ay katumbas ng 1? | Totoo |
=1=2 |
Pareho ba ang 1 at 2? | Hindi totoo |
Mas malaki ang lima kaysa tatlo. |
Mas malaki ba ang 5 kaysa sa 3? | Totoo |
Sa madaling salita 「=A1=0.3 'Returns FALSE' = 'Ang halaga sa A1 ay hindi katumbas ng 0.3' Iyan ang ibig sabihin nito. Pakitandaan ito habang tinitingnan mo ang halimbawa sa ibaba.
Para sa kalinawan, ipinapakita ang mga ekwasyon gamit ang buong-lapad na tanda ng pagkakapantay-pantay (=). Paki-palitan ito ng kalahating-lapad na '=' kapag inilalagay sa Excel.
Halimbawa 1 | Ang Misteryo ng 0.1 + 0.2 ≠ 0.3
Mangyaring subukang ilagay ang sumusunod sa isang selda ng Excel.
| Selula | Pormulang matematikal | Ipakita ang mga resulta | Panloob na halaga |
|---|---|---|---|
| A1 | = 0.1 + 0.2 |
0.3 | 0.30000000000000004… |
| A2 | =A1=0.3 |
Hindi totoo | (Sa mahigpit na pagsasalita, hindi sila magkapantay) |
Bagaman ipinapakita ng display ang tamang halagang '0.3',=A1=0.3 Kapag inihahambing, nagiging FALSE. Isa lang iyon sa mga kakaibang katangian ng IEEE 754 lol
Ang sakit talaga, hindi ba? lol
Halimbawa 2 | Ang pagdaragdag ng 100 ay nagiging sanhi upang ang resulta ay lumihis mula sa isang buo
=KABUUAN(A1:A100) Kapag pinagsasama ang maraming selda gaya ng ipinapakita, ang maliliit na pagkakamali sa bawat seldaMaaaring magpila hanggang 100 piraso:
- Ang pagdagdag ng 0.1 × 100 nang paisa-isa → isang resulta tulad ng 9.99999999999998…
- Inaasahang halaga ng 10 Maaaring hindi laging eksaktong magtugma
Sa pagbibilang ng dami para sa mga gawaing inhinyeriyang sibil, Buod ng 100-panghatian ng 'Lugar × Presyo ng Yunit' Kung gagawin mo iyon, sa huling linya Pagkakaiba ng ilang hanggang ilang dosenang yen Kaya naman nangyayari ito.
![[Halimbawa kung paano nag-iipon ang mga decimal na puwesto at nagdudulot ng paglihis mula sa mga buong numero sa isang kalkulasyon ng SUM sa Excel sa 100 selda | Isang karaniwang pagkakamali sa pagbibilang ng kabuuan]](https://norimen.net/wordpress/wp-content/uploads/2026/06/cb7803b0943e6f4fc8097624033210ff.jpg)
Halimbawa 3 | Pagtitipon ng mga kabuuang bahagi kapag kinakalkula ang mga lugar ng dalisdis (isang karaniwang pangyayari sa mga lugar ng konstruksyon sa dalisdis)
Mga tiyak na senaryo na karaniwang lumilitaw kapag kinakalkula ang lugar para sa mga gawaing slope:
- Inhinyero ng Balangkas:Kalkulahin ang mga lugar gamit ang mga ugat na parisukat sa Excel at pagsamahin ang mga ito.
- Sa huling hanay ng SUM, ang manwal na pagkalkula at Isang pagkakaiba na 0.1 hanggang 0.5 m²
Isa ito sa mga sitwasyong nauubos mo ang kalahating araw nang hindi mo alam kung bakit.
Naalala kong ginamit ko ito nang paulit-ulit para sa mga kalkulasyon noon! lol
Panandaliang solusyon | Palaging gumamit ng function na ROUND sa bawat pagkakataon.
Hindi sapat ang simpleng pagpili ng 'Bawasan ang bilang ng decimal na digit' sa format ng display.
Upang bawasan ang bilang ng mga decimal na digit gamit ang 'Format Cells' na function ng Excel,
Ang mga halaga ay pinalusot lamang para sa pagpapakita; naglalaman pa rin ng mga pagkakamali ang mga tunay na halaga.。
Kung ipagpapatuloy ito sa susunod na pagkalkula, mananatili ang pagkakamali, kaya hindi ito nagbibigay ng pangunahing solusyon.
Ang tunay na solusyon ay bilugan ang mismong halaga sa loob ng function.Ibig sabihin nito.
Kailan Gagamitin ang Paggamit ng Paggagawang-bilog
| Gampanin | Operasyon | Mga gamit |
|---|---|---|
=ROUND(halaga, bilang_ng_digit) |
Pagpabilog | Pangkalahatang Layunin · Mga Kuwentang Pinansyal |
=Pabilog_pababa(halaga, bilang_ng_digits) |
Pagputol | Pagtataya ng gastos batay sa konserbatibong pamamaraan |
=ROUNDUP(halaga, bilang_ng_digit) |
Pagpupuno | Dami ng materyales na dapat i-order (upang maiwasan ang kakulangan) |
=BUONG(halaga) |
Integerisasyon (ang mga negatibong numero ay itinuturing bilang floor function) | Kung nais mong limitahan ang halaga sa isang buo |
=Sahig(halaga, yunit) |
Palitan ng mas mababang halaga ang halaga upang umayon sa tinukoy na yunit. | Pag-aayos sa pinakamalapit na 10 yen o 100 yen |
=TAHINGAN(halaga, yunit) |
I-round up sa tinukoy na yunit. | Tulad ng nabanggit sa itaas, upang maiwasan ang kakulangan. |

Palaging gawin ito nang ganito kapag naghahanda ng pagtataya ng gastos at pansamantalang pagkalkula!
Ang prosesong sinusunod ko para sa pagtataya ng gastos at paunang pagkalkula sa mga proyektong konstruksyon ay ang mga sumusunod:
- Ang mga kalkulasyon ng mga halaga ay palaging
=ROUND(Dami * Presyo Bawat Yunit * 1.10, 0)at bilugan sa pinakamalapit na yen sa bawat pagkakataon - Ang pagkalkula ng mga dami (lugar at dami) ay
=PATAGILID(halaga, 2)... sa dalawang decimal na digit I-roll ito at siguraduhin itong matatag. - Huwag muling kalkulahin sa huling hanay ng buod.(Simpleng kabuuan ng mga bilugan na halaga)
Ibig sabihin nito, maaari kang makabuo ng pahayag na tumutugma sa iyong manwal na pagkalkula hanggang sa huling yen.
Maaari mo ring gamitin nang sabay ang 'Excel Calculation Precision Options'.
Sa Excel, Ang opsyon na 'Magkalkula gamit ang bilang ng ipinakitang digit'Magagamit din ang opsyong ito (File → Options → Advanced → Kapag kinakalkula ang workbook na ito).
Kung i-ON mo ito,Kalkulahin sa pamamagitan ng pag-aayos ng mga panloob na halaga ayon sa format ng pagpapakita ng selda.Gagawin nila iyon. Gayunpaman,
- Inaaplay sa buong aklat (hindi maaaring piliin ang paglalapat)
- May posibilidad na magbago nang magdamag ang mga umiiral na resulta ng pagkalkula.
- Pinakamainam na huwag gamitin ito sa mga pagtataya ng gastos na ibinabahagi sa loob ng koponan.
Sa totoo lang, sa praktika, hindi talaga namin ginagamit ang opsyong ito, atMas ligtas na kontrolin ang mga ito nang paisa-isa gamit ang function na ROUND.Irekomenda ko ito sa sinumang...
Ganoon din sa labas ng Excel | Ang mga limitasyon ng pagsunod sa IEEE 754
Ang error sa floating-point sa IEEE 754 ay,Hindi ito problema na partikular sa Excel; nangyayari ito sa lahat ng pangunahing programa sa spreadsheet, tulad ng Google Spreadsheets, Numbers, at OpenOffice.Gagawin ko.
Bukod dito, ganoon din sa karamihan ng mga wikang pangprograma, tulad ng C, Python, JavaScript at SQL.

Sa madaling salita,Hindi ito 'maling impormasyon dahil Excel lang', kundi isang pandaigdigang pamantayang espesipikasyon.Bilang isang inhinyerong sibil, kailangan mong maunawaan ito, at ang tamang paraan ay gamitin ang function na ROUND.
5 Mahahalagang Punto na Dapat Tandaan
Kapag gumagamit ng Excel para sa pagkalkula ng lugar, pagkalkula ng dami, at iba pang katulad na gawain, pakitandaan ang sumusunod na limang punto.
- ✅ Ang mga kalkulasyon ng mga halaga ay palaging
=Pabilog(…,0)at bilugan sa pinakamalapit na yen - ✅ Ang mga kalkulasyon ng dami ay
=Pabilog(…,2)at nakatakda sa dalawang decimal na digit - ✅ Ang pag-iikot sa format ng display ay hindi binabago ang nakapailalim na halaga.pagiging maingat sa
- ✅
=A1=0.3Iwasan ang direktang paghahambing tulad nito.(Ang Bitag ng isang 'HUWAD' na Resulta) - ✅ Huwag gamitin ang 'Accuracy Option' sa mga pagtatantya ng gastos na ginagamit ng koponan.
Kung hindi ka sigurado, isaalang-alang muna kung dapat mong isama ang isang pagkakataon ng function na ROUND.
Sa pamamagitan lamang ng paglalagay ng isang ROUND na operasyon, naaalis ang 99% ng paglihis na sanhi ng IEEE 754.
Hindi dahil may mga 'quirks' ang Excel, kundi,Mga Kakaibang Katangian ng Arithmetika ng Floating-Point sa Mabuting LupaKailangan nating maunawaan ito at lubusang gamitin.
Magkita tayo mamaya.



