키가 Excel에서 숫자를 기본 2 부동 소수점 숫자로 저장한다는 것이 핵심입니다. 대부분의 십진수는 기본 2 부동 소수점 수로 표현 될 수 없습니다.
"0.58은 부동 소수점으로 표현할 수 없습니다"라는 답변이 있습니다. 0.58이 .NET Decimal 형식과 같은 기본 10 부동 소수점 숫자 형식으로 나타낼 수 있기 때문에 올바르지 않습니다. 물론 Excel에서 숫자에 사용되는 기본 형식을 변경할 수 없기 때문에이 점은 좋지 않습니다.
Excel은 항상 수식 표시 줄에 15 개의 유효 자릿수로 반올림 한 숫자를 표시합니다. 따라서이 숫자는 "정확히"0.58이 아니더라도 수식 입력 줄에 0.58로 표시되며 Excel의 기본 숫자 형식의 제한으로 인해 정확히 0.58이 될 수 없습니다.
표시되는 정밀도를 켜는 것이 좋습니다. Excel 2007에서는 Excel 옵션 -> 고급 ->이 통합 문서를 계산할 때 : -> 표시된 정밀도 설정) - Excel에서이 값을 반올림 할 수도 있고 그렇지 않을 수도 있습니다 XML로 저장할 때 특정 번호를 사용하지만 적어도 일관된 결과를 제공합니다. Precision As Displayed는 계산 결과를 반올림 할뿐만 아니라 이미 숫자 셀에 저장되어있는 숫자를 되돌릴 수 있으며 계산 결과를 반올림하므로이 부분은 되돌릴 수 있으므로 반올림하지 말고 조심하십시오. 표시되는 정밀도는 숫자 형식에 따라 바뀌므로 "0.00"의 숫자 형식을 사용하면 소수점 두 자리까지 반올림됩니다. 그러나 대부분의 소수점 이하 자리수는 Excel의 기본 2 숫자 시스템에서 나타낼 수 없으므로 0.58이 여전히 동일하게 나타날 수 있습니다 XML에 쓰여질 때. "일반"으로 포맷 된 숫자는 표시되는 정밀도가 설정된 상태에서 정밀도 15 자리로 반올림됩니다.
문제가 일관성이 없다고 언급 한 다른 의견을 읽었습니다. 동일한 값 (예 : 0.58이 0.57999999, 때로는 0.58) 또는 다른 값 (예 : 0.58이 좋지 않음, 0.59가 양호한 경우 등)을 의미 했습니까? – user53794
예, 1.40의 문제가 있습니다. 때로는 1.400000000001로 저장되며 때로는 1로 저장되기도합니다.40 (둘 다 xml). –