こちらは「openpyxl」(Pythonライブラリ)のサンプルコードについての記事となっております。
基本情報 … Basic Information
「openpyxl」は、PythonでExcelファイル(.xlsxファイル)を読み書きするためのライブラリです。主な機能として、Excelファイルの読み込みや書き込み、シートやセルの操作、グラフの作成などがあります。また、Excelの機能である条件付き書式、データバリデーション、コメント、ハイパーリンクなども扱えます。OpenPyXLは、Excel 2010以降で導入された新しいExcelファイル形式(.xlsx)に対応しており、旧式のExcelファイル形式(.xls)には対応していません。
サンプルコード … Sample Code
001 MicrosoftExcelファイルの読み込み … Read the Excel File
1.「openpyxl」(Pythonライブラリ)で「XLSX」ファイル(MicrosoftExcelファイル)を読み込む
###############################################################################
import openpyxl
###############################################################################
wb = openpyxl.load_workbook("SAMPLE/sample.xlsx")
print(type(wb)) ### <class 'openpyxl.workbook.workbook.Workbook'>
print(wb.sheetnames) ### ['first']
###############################################################################
ws = wb.active ### active
### ws = wb["first"] ### by name
### ws = wb[0] ### by index
print(type(ws)) ### <class 'openpyxl.worksheet.worksheet.Worksheet'>
print(ws.title) ### first
print(ws.min_row) ### 1
print(ws.max_row) ### 3
print(ws.min_column) ### 1
print(ws.max_column) ### 3
###############################################################################
cell = ws["A1"]
### cell = ws.cell(row=1, column=1)
print(type(cell)) ### <class 'openpyxl.cell.cell.Cell'>
print(cell.coordinate) ### A1
print(cell.row) ### 1
print(cell.column) ### 1
print(cell.font )
### Parameters:
### name='游ゴシック',
### charset=128,
### family=2.0,
### b=False, i=False,
### strike=None,
### outline=None,
### shadow=None,
### condense=None,
### color=<openpyxl.styles.colors.Color object>
### Parameters:
### rgb=None,
### indexed=None,
### auto=None,
### theme=1,
### tint=0.0,
### type='theme',
### extend=None,
### sz=11.0,
### u=None,
### vertAlign=None,
### scheme='minor'
print(cell.number_format )
### General
val = cell.value
print(val) ### one
print(type(val)) ### <class 'str'>
###############################################################################
cell_TUPLE = ws["A1:C3"]
### cell_TUPLE = ws["A1":"C3"]
### cell_TUPLE = ws[1:3][:][:3] ### ws[row_num][row_id][column_id]
print(cell_TUPLE)
### (
### (<Cell 'first'.A1>, <Cell 'first'.B1>, <Cell 'first'.C1>),
### (<Cell 'first'.A2>, <Cell 'first'.B2>, <Cell 'first'.C2>),
### (<Cell 'first'.A3>, <Cell 'first'.B3>, <Cell 'first'.C3>)
### )
for ws_row in cell_TUPLE:
for cell in ws_row:
print(f"{cell.coordinate}:{cell.value}")
### A1:one
### B1:two
### C1:three
### A2:four
### B2:five
### C2:six
### A3:seven
### B3:eight
### C3:nine
###############################################################################
このプログラムでは、openpyxl.load_workbook()
関数を使用して、Excelファイルを読み込みます。ws = wb.active
を使用すると、アクティブなワークシートにアクセスできます。
ワークシートのセルにアクセスするには、ws["A1"]
のように文字列でセルの場所を指定します。cell.value
を使用して、そのセルの値にアクセスできます。また、セルの値の型を確認するには、type(cell.value)
を使用します。
セルの範囲にアクセスするには、ws["A1:C3"]
のように、2つの文字列で範囲を指定します。for
ループを使用して、セルの範囲内のすべてのセルにアクセスすることができます。
以上のように、openpyxlを使用してExcelファイルを操作することができます。