2012-07-05 3 views

답변

3

답변을 찾았지만 배경 지식이 도움이 될 수 있습니다.

Excel에는 날짜와 시간이 숫자로 저장됩니다. 사용자가 2012 년 5 월 31 일을 셀에 입력하면 Excel은이 값을 날짜로 인식하므로 값을 41060으로 저장하고 숫자 서식을 "dd-mmm-yyyy"로 설정합니다. 사용자가 41060을 셀에 입력하고 숫자 형식을 "dd-mmm-yyyy"로 설정하면 값이 2012 년 5 월 31 일으로 표시됩니다. 데이터 입력이 완료되면 Excel은 첫 번째 41060이 날짜로 입력되고 두 번째 입력이 숫자로 입력되었다는 것을 기록하지 않습니다. PC에서

는 날짜의 정수 부분은 1900 년부터 일 (Mac의 경우 올해 1904 사용)과 소수 부분은 다음과 같습니다

time in seconds 
--------------- 
seconds in day 

그래서 41060.25 나타냅니다 : 2012 (31) 월 6:00:00

Excel InterOp을 통해 데이터를 읽을 때 데이터 유형을 모르는 경우 .NumberFormat.Value을 얻는 것이 좋습니다. .Text도 유용 할 수 있습니다. 그것은 사용자가 보는 가치를 제공합니다.

경고 : .NumberFormat을 얻으면 Excel에서 사용하는 형식이 VBA의 Format() 및 VB.Net의 Format()에서 사용되는 형식과 약간 다릅니다.

엑셀 날짜에 대한 자세한 내용은 How to use dates and times in Excel을 참조하십시오.

+0

Thx 자세한 내용은 :) –

2

날짜를 두 번 반환하므로 DateTime.FromOADate (41060)가 올바른 형식의 날짜를 반환합니다.

+0

해결책을 시도해 보겠습니다. :) –

+0

그것은 작동합니다. 치어 리더 –