worksheet.worksheet【ワークシート】モジュール
メモ ( 概要 外部リンク ) 例
ワークシート関連: ワークシート名 ウィンドウ枠 タブの色 ワークシートの表示・非表示 行・列の挿入・削除・非表示・データ追加 ページ設定 改ページ ビュー・ズーム倍率 等
セル関連: セルの参照 セル結合・セル結合解除 セルのサイズ 入力規則 条件付き書式
クラス: Worksheet【ワークシート】 ( クラス定義 定数 操作 プロパティ メソッド )
メモ
概要
- Excel のシートに対応
- モジュール内定義
- ワークシートの下記については workbook【ワークブック】モジュール 参照
- 関連モジュール
ワークシート名
〔 例 〕- title【シート名】プロパティ
- Workbook【ワークブック】. create_sheet【ワークシート作成】でシート名を指定
ウィンドウ枠
〔 例 〕- Excel の [表示]タブ - [ウィンドウ] - [ウィンドウ枠の固定]/[分割] に対応
- 固定:freeze_panes【ウィンドウ枠の固定セルアドレス】プロパティ (固定解除も可)
- 分割:worksheet.views【ビュー】モジュール のウィンドウ枠の分割 参照
ワークシートのタブ色
〔 例 〕ワークシートの表示・非表示
〔 例 〕- sheet_state【表示状態】プロパティ
行・列の挿入・削除・非表示・データ追加
〔 例 〕- insert_rows【行挿入】メソッド
- delete_rows【行削除】メソッド
- row_dimensions[ row ].hidden【非表示の指定 (行)】プロパティ
- append【データ追加】メソッド
- insert_cols【列挿入】メソッド
- delete_cols【列削除】メソッド
- column_dimensions[ col ].hidden【非表示の指定 (列)】プロパティ
- 列方向のデータ追加メソッドはなし
- ※数式の相対アドレス等の自動更新なし (ライブラリの範囲外)
代替:処理後に数式設定
ページ設定
- 詳細は、worksheet.page【ページ設定】モジュール 参照
改ページ
ビュー・ズーム倍率 等
- 詳細は、worksheet.views【ビュー】モジュール 参照
以下 Cell【セル】関連
セルの参照
- worksheet[ address ]【セル参照】操作〔 例 (1/3) 〕
- cell【セルオブジェクト取得】メソッド〔 例 (1/3) 〕
- for row in worksheet【繰り返し処理】操作〔 例 (2/3) 〕
- iter_cols【列情報ジェネレータ】メソッドで、列情報のイテレータを取得し参照〔 例 (3/3) 〕
- iter_rows【行情報ジェネレータ】メソッドで、行情報のイテレータを取得し参照〔 例 (3/3) 〕
- Workbook【ワークブック】 の defined_names【名前定義】プロパティから名前定義セルを参照
詳細は、workbook.defined_name【名前定義】モジュール の名前定義の追加・参照 参照
セル結合・セル結合解除
〔 例 〕セルのサイズ (列の幅・行の高さ)
〔 例 〕入力規則
条件付き書式
外部リンク
- openpyxl (英語)
- ECMA-376:Office Open XML file formats (英語)
SpreadsheetML:- worksheet (Worksheet)
Worksheet【ワークシート】クラス
クラス定義
クラス | 備考 |
---|---|
親:openpyxl.workbook.child._WorkbookChild | |
class Worksheet( parent, title=None) | ワークシート parent親ワークブック titleシート名 ※直接生成せずに Workbook【ワークブック】の create_sheet【ワークシート作成】メソッドを使用 |
定数
インポート:from openpyxl.worksheet.worksheet import Worksheet
定数 | 値 | 備考 |
---|---|---|
改ページ | ||
BREAK_NONE | 0 | |
BREAK_ROW | 1 | |
BREAK_COLUMN | 2 | |
シートの表示状態〔sheet_state【表示状態】〕 | ||
SHEETSTATE_VISIBLE | 'visible' | 表示 |
SHEETSTATE_HIDDEN | 'hidden' | 非表示 |
SHEETSTATE_VERYHIDDEN | 'veryHidden' | 非表示 (マクロ等からのみ再表示可) |
用紙サイズ (設定:int 変換)〔ページ設定〕 | ||
PAPERSIZE_LETTER | '1' | レター |
PAPERSIZE_LETTER_SMALL | '2' | レター スモール |
PAPERSIZE_TABLOID | '3' | タブロイド |
PAPERSIZE_LEDGER | '4' | レジャー |
PAPERSIZE_LEGAL | '5' | リーガル |
PAPERSIZE_STATEMENT | '6' | ステートメント |
PAPERSIZE_EXECUTIVE | '7' | エグゼクティブ |
PAPERSIZE_A3 | '8' | A3 |
PAPERSIZE_A4 | '9' | A4 |
PAPERSIZE_A4_SMALL | '10' | A4 スモール |
PAPERSIZE_A5 | '11' | A5 |
(参考) | 70 | A6 |
用紙方向〔ページ設定〕 | ||
ORIENTATION_PORTRAIT | 'portrait' | 縦方向 |
ORIENTATION_LANDSCAPE | 'landscape' | 横方向 |
(参考) | 'default' | デフォルト |
操作
操作 | 備考 |
---|---|
worksheet[address] | セル参照 addressアドレス 単一セル (例:'B3') セル範囲 (例:'B3:D5') 単一行 (例:'3') 複数行 (例:'3:5') 単一列 (例:'B') 複数列 (例:'B:D') ※行指定 または 列指定の最大位置は、データ(書式を含む)が存在する範囲 |
worksheet [address] = value ※以下と同等 worksheet [address] .value = value cell .value = value | セル値 設定 (Cell【セル】 の value【値】プロパティの省略形) address単一セルアドレス (例:'B3') |
for row in worksheet | 繰り返し処理 row行情報 (Cell【セル】のtuple) 'A1' から max_row【最大行インデックス】・max_column【最大列インデックス】 の範囲 |
del worksheet [address] | セルデータ(書式を含む) 削除 address単一セルアドレス (例:'B3') |
プロパティ
プロパティ | 型 | 備考 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
active_cell | アクティブ セル | ||||||||||||||
auto_filter | AutoFilter | オートフィルタ | |||||||||||||
col_breaks | ColBreak | 改ページ リスト (列)〔改ページ〕 | |||||||||||||
column_dimensions[ col ]. col:列文字列 ('A'~) ※参考: utils.get_column_letter 【列番号→列文字列 変換】 | DimensionHolder | 列情報 | |||||||||||||
auto_size | bool | bestFit【幅自動調節】のエイリアス | |||||||||||||
bestFit | bool | 幅自動調節 (動作不可) | |||||||||||||
collapsed | bool | グループの折りたたみ | |||||||||||||
customWidth | |||||||||||||||
index | str | 列文字列 ('A'~) | |||||||||||||
max | int | ||||||||||||||
min | int | ||||||||||||||
outline_level | グループのアウトライン レベル | ||||||||||||||
outlineLevel | outline_level【グループのアウトライン レベル】のエイリアス | ||||||||||||||
style | |||||||||||||||
visible | bool | (表示の有無) | |||||||||||||
width | float | 列の幅 (文字数単位) | |||||||||||||
columns | |||||||||||||||
conditional_formatting | ConditionalFormattingList | 条件付き書式リスト〔条件付き書式〕 | |||||||||||||
data_validations | DataValidationList | 入力規則リスト〔入力規則〕 | |||||||||||||
dimensions | |||||||||||||||
evenFooter | HeaderFooterItem | フッター (偶数ページ)〔ヘッダー・フッター〕 HeaderFooter.evenFooter へのショートカット ※親クラスの_WorkbookChild で定義 | |||||||||||||
evenHeader | HeaderFooterItem | ヘッダー (偶数ページ)〔ヘッダー・フッター〕 HeaderFooter.evenHeader へのショートカット ※親クラスの_WorkbookChild で定義 | |||||||||||||
firstFooter | HeaderFooterItem | フッター (先頭ページ)〔ヘッダー・フッター〕 HeaderFooter.firstFooter へのショートカット ※親クラスの_WorkbookChild で定義 | |||||||||||||
firstHeader | HeaderFooterItem | ヘッダー (先頭ページ)〔ヘッダー・フッター〕 HeaderFooter.firstHeader へのショートカット ※親クラスの_WorkbookChild で定義 | |||||||||||||
formula_attributes | {} | ||||||||||||||
freeze_panes | str (None:枠の固定なし) | ウィンドウ枠の固定セルアドレス 〔例:ウィンドウ枠〕 ※設定は Cell【セル】指定も可 ・列固定:1行目を指定 (例:'C1') ・行固定:1列目を指定 (例:'A3') ・セル固定:上記以外 (例:'B2') ・取得:セルアドレス形式 (None:枠の固定なし) ・解除:'A1'・None (不正な情報が残る為、下記も指定) [1] ws.sheet_view.selection = [ws.sheet_view.selection[0]] [2] ws.sheet_view.selection[0].pane = 'topLeft' (参考: Trying to unfreeze panes with openpyxl causes damages (英語)) | |||||||||||||
legacy_drawing | None | ||||||||||||||
HeaderFooter. | (一部抜粋) | HeaderFooter | ヘッダー・フッター〔詳細〕 ※親クラスの_WorkbookChild で定義 | ||||||||||||
evenFooter | HeaderFooterItem | フッター (偶数ページ) | |||||||||||||
evenHeader | HeaderFooterItem | ヘッダー (偶数ページ) | |||||||||||||
firstFooter | HeaderFooterItem | フッター (先頭ページ) | |||||||||||||
firstHeader | HeaderFooterItem | ヘッダー (先頭ページ) | |||||||||||||
oddFooter | HeaderFooterItem | フッター (奇数/共通ページ) | |||||||||||||
oddHeader | HeaderFooterItem | ヘッダー (奇数/共通ページ) | |||||||||||||
max_column | int (1~) | 最大列インデックス ※データ(書式を含む)が存在する範囲 | |||||||||||||
max_row | int (1~) | 最大行インデックス ※データ(書式を含む)が存在する範囲 | |||||||||||||
merged_cell_ranges | |||||||||||||||
merged_cells | MultiCellRange | ||||||||||||||
min_column | int (1~) | 最小列インデックス ※データ(書式を含む)が存在する範囲 | |||||||||||||
min_row | int (1~) | 最小行インデックス ※データ(書式を含む)が存在する範囲 | |||||||||||||
oddFooter | HeaderFooterItem | フッター (奇数/共通ページ)〔ヘッダー・フッター〕 HeaderFooter.oddFooter へのショートカット ※親クラスの_WorkbookChild で定義 | |||||||||||||
oddHeader | HeaderFooterItem | ヘッダー (奇数/共通ページ)〔ヘッダー・フッター〕 HeaderFooter.oddHeader へのショートカット ※親クラスの_WorkbookChild で定義 | |||||||||||||
orientation | (印刷の向き)〔ページ設定〕 | ||||||||||||||
page_breaks 3.0 | tuple(RowBreak, ColBreak) | 改ページ リスト [削除予定]〔改ページ〕 下記の tuple ・row_breaks【改ページ リスト (行)】 ・col_breaks【改ページ リスト (列)】 | |||||||||||||
page_margins | PageMargins | 余白 (ページ設定) | |||||||||||||
page_setup | PrintPageSetup | ページ設定 | |||||||||||||
paper_size | (用紙サイズ)〔ページ設定〕 | ||||||||||||||
print_area | str | 印刷範囲〔ページ設定〕 | |||||||||||||
print_options | PrintOptions | 印刷オプション〔ページ設定〕 | |||||||||||||
print_title_cols | str | 印刷タイトル列 (例:'B:D')〔ページ設定〕 | |||||||||||||
print_title_rows | str | 印刷タイトル行 (例:'2:4')〔ページ設定〕 | |||||||||||||
print_titles | str | 印刷タイトル行列 (例:'2:4,B:D')〔ページ設定〕 | |||||||||||||
protection | SheetProtection | シート保護 | |||||||||||||
row_breaks | RowBreak | 改ページ リスト (行)〔改ページ〕 | |||||||||||||
row_dimensions[ row ]. row:行番号 (1~) | DimensionHolder | 行情報 | |||||||||||||
collapsed | グループの折りたたみ | ||||||||||||||
customFormat | |||||||||||||||
customHeight | |||||||||||||||
height | float | ht【行の高さ (ポイント単位)】のエイリアス | |||||||||||||
ht | float | 行の高さ (ポイント単位) | |||||||||||||
index | 行番号 (1~) | ||||||||||||||
outline_level | グループのアウトライン レベル | ||||||||||||||
outlineLevel | outline_level【グループのアウトライン レベル】のエイリアス | ||||||||||||||
r | index【行番号】のエイリアス | ||||||||||||||
s | style_idのエイリアス | ||||||||||||||
spans | |||||||||||||||
style_id | |||||||||||||||
thickBot | bool | ||||||||||||||
thickTop | bool | ||||||||||||||
visible | bool | (表示の有無) | |||||||||||||
rows | |||||||||||||||
scenarios | ScenarioList | ||||||||||||||
selected_cell | |||||||||||||||
sheet_format | SheetFormatProperties | ||||||||||||||
sheet_properties. | WorksheetProperties | ||||||||||||||
codeName | str | ||||||||||||||
enableFormatConditionsCalculation | bool | ||||||||||||||
filterMode | bool | ||||||||||||||
outlinePr | Outline | ||||||||||||||
pageSetUpPr | PageSetupProperties | ||||||||||||||
published | bool | ||||||||||||||
syncHorizontal | bool | ||||||||||||||
syncRef | str | ||||||||||||||
syncVertical | bool | ||||||||||||||
tabColor | Color (None:初期色) | タブの色 | |||||||||||||
tagname= 'sheetPr' | |||||||||||||||
transitionEntry | Elements | ||||||||||||||
transitionEvaluation | bool | ||||||||||||||
sheet_state | str | 表示状態
| |||||||||||||
sheet_view | SheetView | シートビュー (views【シートビュー リスト】の先頭ビューへのショートカット) | |||||||||||||
show_gridlines | bool | 枠線の表示有無 | |||||||||||||
show_summary_below | |||||||||||||||
show_summary_right | |||||||||||||||
tables | |||||||||||||||
title | シート名 ※親クラスの_WorkbookChild で定義 | ||||||||||||||
values | |||||||||||||||
views | SheetViewList | シートビュー リスト |
メソッド
メソッド | 備考 |
---|---|
add_chart( chart, anchor=None) | グラフ追加 |
add_data_validation( data_validation) | 入力規則 追加〔入力規則〕 data_validation (DataValidation)入力規則 |
add_image( img, anchor=None) | 図追加 |
add_pivot(pivot) | ピボット追加 |
add_table(table) | テーブル追加 |
append( iterable) | データ追加 (値の並びを下部に追加) iterableイテラブル オブジェクト (値の並び) dict:キーを列識別子(1~ | 'A'~)として追加 list | tuple | range | generator:先頭列から追加 |
calculate_dimension() | データを含むセルの最小範囲取得 戻り値 (str)セルの最小範囲 (例:'B3:D5') |
cell( row, column, value=None) | セルオブジェクト取得 (値設定可) 戻り値Cell【セル】 row (int)行 column (int)列 value設定値 (省略:値設定なし) |
delete_cols( idx, amount=1) | 列削除 idx列番号 (削除開始) amount列数 |
delete_rows( idx, amount=1) | 行削除 idx行番号 (削除開始) amount行数 |
insert_cols( idx, amount=1) | 列挿入 idx列番号 (挿入開始) amount列数 |
insert_rows( idx, amount=1) | 行挿入 idx行番号 (挿入開始) amount行数 |
iter_cols( min_col=None, max_col=None, min_row=None, max_row=None, values_only=False) | 列情報ジェネレータ 戻り値列情報イテレータ min_col (int:1~)最小列 (省略:1) max_col (int:1~)最大列 (省略:シートの最大列) min_row (int:1~)最小行 (省略:1) max_row (int:1~)最大行 (省略:シートの最大行) values_only (bool)値のみの取得指定 (True:値のみ / False:セル) |
iter_rows( min_row=None, max_row=None, min_col=None, max_col=None, values_only=False) | 行情報ジェネレータ 戻り値行情報イテレータ min_row (int:1~)最小行 (省略:1) max_row (int:1~)最大行 (省略:シートの最大行) min_col (int:1~)最小列 (省略:1) max_col (int:1~)最大列 (省略:シートの最大列) values_only (bool)値のみの取得指定 (True:値のみ / False:セル) |
merge_cells( range_string=None, start_row=None, start_column=None, end_row=None, end_column=None) | セル結合 range_string範囲文字列 (例:'B3:D5') start_row (int)開始行 (1~) start_column (int)開始列 (1~) end_row (int)終了行 (1~) end_column (int)終了列 (1~) ※range_string (範囲文字列)を指定 または それ以外を指定 |
move_range( cell_range, rows=0, cols=0, translate=False) | セル移動 cell_rangeセル範囲 rows移動行数 (0<:下移動 / <0:上移動) cols移動列数 (0<:右移動 / <0:左移動) translate数式更新の有無 ※移動先は上書き |
set_printer_settings( paper_size, orientation) | プリンター設定〔ページ設定〕 paper_size用紙サイズ orientation印刷の向き |
unmerge_cells( range_string=None, start_row=None, start_column=None, end_row=None, end_column=None) | セル結合解除 range_string範囲文字列 (例:'B3:D5') start_row (int)開始行 (1~) start_column (int)開始列 (1~) end_row (int)終了行 (1~) end_column (int)終了列 (1~) ※range_string (範囲文字列)を指定 または それ以外を指定 |