Herinner je je de coole geanimeerde kanonkaart van onze uitdaging van december 2002 nog? Het werd geprogrammeerd door Earl Takasaki. Wel, een pluim voor Earl voor het ontdekken van een belangrijke bug in Excel 2003 deze week. Hier is de opmerking van Earl:
Misschien ben je geïnteresseerd om te weten dat ik denk dat ik een vrij significante bug heb gevonden in de RAND () -functie van EXCEL 2003. Zoals u weet, zou RAND () pseudo-willekeurige getallen moeten retourneren die uniform zijn verdeeld in het interval (0,1).
Herhaalde oproepen zullen echter resulteren in de functie "breken" en het begint negatieve getallen met een grappige verdeling terug te geven.
Probeer dit:
Vul 20 volledige kolommen met RAND () -functies. Druk nu meerdere keren op F9. Binnenkort zullen sommige cijfers (ongeveer 15%) negatief worden. (gebruik voorwaardelijke opmaak om dit duidelijker weer te geven) Dit gebeurde niet in Excel 2002.
Dit is belangrijk omdat de functie RAND () wordt gebruikt voor veel simulatie- en beslissingsmodellen in alle soorten velden en dit soort fouten zal al die modellen breken.
Met dank aan Earl voor het ontdekken van dit. Ik heb dit opgezet. Dit werkblad heeft 1,2 miljoen =RAND()
functies. Bij de 4e herberekening komen veel getallen negatief uit, zoals hieronder wordt weergegeven.

Hier is het goede nieuws:
Ik heb persoonlijk met iemand van het Excel-team van Microsoft gesproken op woensdag 10 december 2003. Het probleem wordt opgelost en er zal een update beschikbaar komen.
U lijkt tussen de 3,5 miljoen en 15 miljoen "goede" willekeurige getallen te krijgen voordat het proces mislukt. Dus - als je gewoon =RAND()
een paar spelletjes craps speelt tijdens de koffiepauze, zul je er niet slecht aan toe zijn.
Het probleem heeft alleen gevolgen voor degenen die een upgrade naar Excel 2003 hebben uitgevoerd. Hoewel ik denk dat dit een onmisbare update is voor de wetenschappelijke gemeenschap, zullen niet veel mensen door deze bug worden getroffen.
Ik verwacht dat we binnenkort een update van Microsoft krijgen. Ik zal hier informatie plaatsen als ik er iets over hoor.