python:openpyxl

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
python:openpyxl [2019/03/04 13:56] mumeiyamibitopython:openpyxl [2019/03/04 14:51] (現在) mumeiyamibito
行 12: 行 12:
 <code python>import openpyxl</code> <code python>import openpyxl</code>
  
-==== ワークブックオブジェクトの作成 ====+==== ワークブックの作 ====
   * 新規作成<code python>wb = openpypxl.Workbook()</code>   * 新規作成<code python>wb = openpypxl.Workbook()</code>
-  * 既存の xlsx ファイルの読み込み<code python>wb = openpyxl.load_workbook("INPUT.xlsx")</code> +  * 既存の xlsx ファイルの読み込み<code python>wb = openpyxl.load_workbook(INPUT)</code> 
-    * ''INPUT.xls'': 既存の xlsx ファイルのパス+    * ''INPUT.xls'': 読み込む xlsx ファイルのパス 
 +  * 保存<code python>wb.save(OUTPUT)</code> 
 +    * ''OUTPUT'': 保存先のパス
  
 ==== ワークシートの操作 ==== ==== ワークシートの操作 ====
行 26: 行 28:
       * ''ws'': ワークシートオブジェクト       * ''ws'': ワークシートオブジェクト
       * ''wb'': ワークブックオブジェクト       * ''wb'': ワークブックオブジェクト
-    * ワークシート名で選択<code python>wb["SHEET_NAME"]+    * ワークシート名で選択<code python>wb["SHEET_NAME"]</code>
   * ワークシート名の変更<code python>ws.title = "NAME"</code>   * ワークシート名の変更<code python>ws.title = "NAME"</code>
     * ''ws'': ワークシートオブジェクト     * ''ws'': ワークシートオブジェクト
行 35: 行 37:
     * オブジェクト一覧<code python>wb.worksheets</code>     * オブジェクト一覧<code python>wb.worksheets</code>
     * シート名一覧<code python>wb.sheetnames</code>     * シート名一覧<code python>wb.sheetnames</code>
 +
 +==== セルの操作 ====
 +  * セルの値の変更
 +    * <code python>ws.cell(row = I, column = J, value = V)</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * ''I'': セルの行番号 (1 から始まる)
 +      * ''J'': セルの列番号 (1 から始まる)
 +      * ''V'': 代入する値
 +    * <code python>ws.cell(row = I, column = J).value = V</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * ''I'': セルの行番号 (1 から始まる)
 +      * ''J'': セルの列番号 (1 から始まる)
 +      * ''V'': 代入する値
 +    * <code python>ws["POS"] = V</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * ''POS'': エクセルのセルの指定表記 (A1 や B2 など)
 +      * ''V'': 代入する値
 +  * 1 つのセルの読み込み
 +    * <code python>ws.cell(row = I, column = J).value</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * ''I'': セルの行番号 (1 から始まる)
 +      * ''J'': セルの列番号 (1 から始まる)
 +    * <code python>ws["POS"].value</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * ''POS'': エクセルのセルの指定表記 (A1 や B2 など)
 +  * 複数のセルの読み込み
 +    * <code python>ws.iter_rows(min_row = MinR, max_row = MaxR, min_col = MinC, max_col = MaxC)</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * ''MinR'': 最小の行番号 (1 から始まる)
 +      * ''MaxR'': 最大の行番号 (1 から始まる)
 +      * ''MinC'': 最小の列番号 (1 から始まる)
 +      * ''MaxC'': 最大の列番号 (1 から始まる)
 +      * タプルに値が格納されたジェネレータが返される。
 +    * <code python>ws.values</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * すべてのセルオブジェクトがジェネレータが返される。
 +    * <code python>ws["POS:POS"]</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * ''POS:POS'': Excel の複数セルの表記 (A1:B2 -> 2x2)
 +      * セルオブジェクトが格納された二次元タプルが返される。
 +    * <code python>ws.rows</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * セルオブジェクトが格納されたタプルが行単位のジェネレータで返される。
 +    * <code python>ws.columns</code>
 +      * ''ws'': ワークシートオブジェクト
 +      * セルオブジェクトが格納されたタプルが列単位のジェネレータで返される。
 +    * 例: すべてのセルを for で読み込む<code python>
 +for row in ws:
 +    for cell in row:
 +        print(cell.value)
 +</code>
 +      * ''ws'': ワークシートオブジェクト
 +    * セルの表示形式を変更する (''cell'' はセルオブジェクト)。
 +      * 標準<code python>cell.number_format = openpyxl.styles.numbers.FORMAT_GENERAL</code>
 +        * 何も指定しない場合は、自動的にこのフォーマットになる。
 +      * 数値
 +        * 数値のデフォルト<code python>cell.number_format = openpyxl.styles.numbers.FORMAT_NUMBER</code>
 +        * 桁数を指定<code python>cell.number_format = "0.0_"</code>
 +          * ''0_''、''0.0_''、''0.00_'' のように桁数を指定する。
 +        * コンマ区切り<code python>cell.number_format = "#,##0.0_"</code>
 +          * 桁数指定の前に ''#,##'' を付ける。
 +      * パーセント表示<code python>cell.number_format = "0.0%"</code>
 +        * 数値の表記の後に ''%'' を付ける。
  
  
 ===== 参考サイト ===== ===== 参考サイト =====
   * [[https://note.nkmk.me/python-openpyxl-usage/ | PythonでExcelファイル(xlsx)を読み書きするopenpyxlの使い方 | note.nkmk.me]]   * [[https://note.nkmk.me/python-openpyxl-usage/ | PythonでExcelファイル(xlsx)を読み書きするopenpyxlの使い方 | note.nkmk.me]]
 +  * [[http://note.crohaco.net/2017/python-openpyxl-excel/ | [Python] openpyxl で Excel を操作してみた! - くろのて]]
 +  * [[https://pg-chain.com/python-excel-format | Python Excelのセルにフォーマットを指定する | 鎖プログラム]]
  
  
 {{tag>プログラミング}} {{tag>プログラミング}}
  
  • python/openpyxl.1551675389.txt.gz
  • 最終更新: 2019/03/04 13:56
  • by mumeiyamibito