0
我有這個python腳本,應該從目錄中打開一個excel工作簿,然後更改第一個工作表的名稱,然後運行存儲過程在第一個工作表和隨後的工作表上。 當我運行腳本時,它給了我一個錯誤 - 'str'對象屬性'title'是隻讀的。任何幫助或建議表示讚賞。python腳本打開excel工作簿,並更改第一個工作表的名稱並執行存儲過程
import os
import pyodbc
import openpyxl
from openpyxl import load_workbook
dirList = os.listdir("""\\Raw_Data\\HSRx""")
#database connection
#loop through excel workbooks
#loop through excel sheets in each workbook
#run stored proc on each worksheet
#close files and disconnect to sql server
conn = pyodbc.connect('DRIVER={SQLServer};SERVER=localhost;DATABASE=mydb;UID=myname;PWD=mypwd')
cursor = conn.cursor()
for n in dirList:
path =os.path.join("""\\Raw_Data\\HSRx""",n)
workbook = openpyxl.reader.excel.load_workbook(path)
worksheets = workbook.get_sheet_names()
sheet = ['None','None']
i = 0
print n
for worksheet in worksheets:
worksheet.title = "Sheetone"
sheet[i] = "Sheetone"
i += 1
print worksheet
cursor.execute("""exec SP_IMPORT_HSRx_Ins ?, ?, ?""",n,sheet[0],sheet[1])
cursor.commit()
conn.close()
這裏是回溯:
CS NOV20 12.xlsx Traceback (most recent call):
File "HSRXRecons.py", line 25, in <module> worksheet.title = "Sheetone"
AttributeError: 'str' object attribute 'title' is read-only
請,原地滿回溯:
要更改標題傳遞表名
get_sheet_by_name
。 – DenisCS NOV20 12.xlsx 回溯(最近一次調用): 文件 「HSRXRecons.py」 25行,在 worksheet.title = 「Sheetone」 AttributeError的: '海峽' 對象屬性 '標題' 是隻讀 –