簡體   English   中英

Python:打印日期到Excel- TypeError:強制轉換為str,需要字節,bytearray或緩沖區,如object,int found

[英]Python: printing date to Excel- TypeError: coercing to str, need bytes, bytearray or buffer like object, int found

我正在嘗試將日期鍵入Excel中列中的下一個空單元格,並且我在標題中收到錯誤。 到目前為止我有這個:

from win32com.client import Dispatch
import datetime
import pythoncom

#open workbook
xl = Dispatch('Excel.Application')
wb = xl.Workbooks.Add(' path to workbook ')
ws = wb.Worksheets(1)

#initialize values
empty = False
row = 1
col = 1
now = datetime.datetime.now()
day = str(now.day,"/")
month = str(now.month,"/")
year = str(now.year)
val = ws.Cells(row,col).value

#input date into Excel
#loop until empty cell is found in column
while not empty:
    val = ws.Cells(row,col).value
    print("Searching for next empty cell...")
    if val == None:
        print("Found empty cell! Writing date...")
        ws.Cells(row,col).value = (day + month + year)
        empty = True
    row += 1

#macro to save workbook
xl.Run('Save')

#close and release processes
wb.Close(True)
xl.Quit()

pythoncom.CoUninitialize()

有人有想法么?

謝謝

編輯我試圖不將日期用作int的原因,是因為當它被帶入Excel時它只會帶來一天(即今天只會帶來17)而不是日期的其余部分。

嘗試

ws.Cells(row,col).value = datetime.datetime.now().strftime("%d/%m/%Y")

strftime以您喜歡的格式將日期轉換為字符串,無需手動執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM