Il bug di Excel che aveva preoccupato quanti ne fanno usi di particolare importanza, soprattutto in ambito business, è ormai storia: Microsoft ha distribuito una patch correttiva in grado di risolvere un problema che, inoltre, a distanza di qualche giorno dalla segnalazione risulta essere meno importante di quanto non potesse inizialmente apparire.
Il problema era stato identificato in un numero ben preciso: 65535. I calcoli che giungevano a tale risultato mostravano un risultato diverso, pari a 100.000. Il problema, però, risulta essere identificato solo nel numero a schermo, mentre i calcoli relativi conseguenti non davano ulteriore problema. La spiegazione è fornita da Davide Alemani sul blog italiano di Office: «questo bug porta a un risultato – apparentemente – sbagliato nelle moltiplicazioni: se il risultato è molto vicino a 65535 si verifica l’errore. Per esempio, digitando =77,1*850 o =10,2*6425 il risultato visualizzato non è 65535 (corretto) ma 100.000. Questo problema è dovuto a un errore nel calcolo in virgola mobile di Excel 2007 e non coinvolge le versioni precedenti. Fortunatamente è solo un problema di visualizzazione e riutilizzando il risultato in un’altra formula, non ci sono problemi. Per esempio, se digitiamo in A1 =10,2*6425 otteniamo 100.000, ma se in un’altra cella digitiamo =A1*2, otteniamo 131.070, che è il risultato corretto».
Per gli utenti aventi Office 2007, ogni spiegazione tecnica è disponibile nell’articolo KB943075:
- «il risultato del calcolo è un numero tra 65534.99999999995 e 65.535. Il calcolo si esegue correttamente. Il risultato tuttavia si visualizza non correttamente come 100.000»;
- «il risultato del calcolo è un numero tra 65535.99999999995 e 65.536. Il calcolo si esegue correttamente. Il risultato tuttavia si visualizza non correttamente come 100.001».
Una patch è disponibile per l’installazione manuale. Secondo quanto indicato nel post di David Gainer sul blog del team di sviluppo di Microsoft Excel, l’update è in distribuzione anche tramite Microsoft Update.