適度に大きいxlsxファイル(約14 MB)があり、OpenOfficeがそれを開こうとしてハングします。私は openpyxl を使用してコンテンツを読み、 このチュートリアル を実行しようとしていました。コードスニペットは次のとおりです。
from openpyxl import load_workbook
wb = load_workbook(filename = 'large_file.xlsx', use_iterators = True)
ws = wb.get_sheet_by_name(name = 'big_data')
問題は、シート名がわからず、Sheet1/Sheet2。などが機能しなかった(返されたNoneTypeオブジェクト)ことです。 openpyxlを使用してxlsxファイルのシート名を取得する方法というドキュメントを見つけることができませんでした。誰も私を助けることができますか?
sheetnames
プロパティ を使用します。
シート名
このワークブック内のワークシートの名前のリストを返します。
名前はワークシートの順序で返されます。
タイプ:文字列のリスト
print (wb.sheetnames)
wb.worksheets
からワークシートオブジェクトを取得することもできます。
ws = wb.worksheets[0]
python 3.xシート名を取得するには属性を使用する必要があります
g_sheet=wb.sheetnames
リストで戻る
for i in g_sheet:
print(i)
**任意の名前を選択してください**
ws=wb[g_sheet[0]]
またはws = wb [任意の名前]名前シートがペースターであると想定
ws=wb["paster"]
前の回答で述べたように、ws.sheetnames
を使用してシート名のリストを取得できます
ただし、シート名がわかっている場合は、次の方法でそのワークシートオブジェクトを取得できます。
ws.get_sheet_by_name("YOUR_SHEET_NAME")
これを行う別の方法は、以前の回答で述べたとおりです
ws['YOUR_SHEET_NAME']