2
나는 VBA 매크로를 통해 Excel 파일을 암호화하고 Excel 파일의 모든 시트를 복사하려고하지만 스크립트는 계속 날아갑니다. 내 스 니펫에서 내가 뭘 잘못하고 있니?xlsm을 csv로 변환
import csv
import xlrd
workbook = xlrd.open_workbook('P:/NEW.xlsm')
for sheet in workbook.sheets():
with open('{}.csv'.format(sheet.name), 'wb') as f:
writer = csv.writer(f)
writer.writerows(sheet.row_values(row) for row in range(sheet.nrows))
오류 :
Traceback (most recent call last):
File "C:/Users/datainput.py", line 8, in <module>
writer.writerows(sheet.row_values(row) for row in range(sheet.nrows))
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2013' in position 20: ordinal not in range(128)
이'NEW의 예를 추가하십시오 함수 .encode ('UTF-8')/디코딩 기능을 사용 당신은 당신의 새 파일에 쓰기 전에와 유니 코드를 제거 볼 수 있었다. xlsm' –
무슨 뜻인지 자세히 설명해 주시겠습니까? 모든 시트의 이름을 알려주시겠습니까? –