2013-12-09 4 views
2

xldate_as_tuple 함수를 사용하여 Excel에서 읽은 날짜를 적절한 날짜로 변환 할 수 있습니다. 역순으로 수행 할 수있는 함수가 있습니까? 즉, Excel에서 날짜로 저장되는 적절한 날짜를 부동으로 변환 할 수 있습니까?날짜를 Excel로 저장되어있는 현재 날짜를 float로 변환하는 방법은 무엇입니까?

+0

나는 기존 기능에 대해 말할 수 있지만, 당신은 당신의 자신을 작성할 수 있습니다. 엑셀 날짜 일련 번호는 1900 년 1 월 1 일 이후의 일수입니다. 일 단위로 날짜를 비교하면 답변을 얻을 수 있습니다. –

+0

Excel에서 Epoch에 대해 알지 못합니다. :) – greg

+0

@PortlandRunner 그것은 실제로 1899 년 12 월 31 일입니다. 설명은 http://www.joelonsoftware.com/items/2006/06/16.html을 참조하십시오. –

답변

1

모듈에는 datetime 개체를 Excel 시리즈 날짜로 변환하는 xldate_from_date_tuple(), xldate_from_time_tuple()xldate_from_datetime_tuple() 등의 몇 가지 함수가 있습니다.

또한 XlsxWriter 유틸리티.py 모듈에는이라는 Excel 연속 날짜에 대한 datetime 객체를 변환하는 함수가 있습니다.

이러한 모든 솔루션은 신기원과 Excel 1900 윤년 버그를 고려합니다.

-1

Excel 날짜는 pywintypes.Time 형식 개체로 표시됩니다. 그래서 예를 들어 셀에 현재의 타임 스탬프를 할당 당신이 할 :

workbook.Worksheets (1) .Cells (1,1) .Value = pywintypes.Time (datetime.datetime.now())를 xlrd xldate.py에서

+0

왜 downvote? –

0

거의 Bjoern Stiel의 답변 (위쪽 화살표를 시도했지만 충분한 평판이 없음).

는 tz_info (이 중고 pytz) 추가했다 :

from win32com.client import Dispatch 
    xlApp = Dispatch("Excel.Application") 
    book = xlApp.Workbooks.Open(r"C:\Path\to\file") 
    d = pytz.utc.localize(datetime.datetime.now()) 
    book.Sheets(1).Cells(2,12).Value = d 
관련 문제