Home » Python » xlwingsの使い方 » pandasのDataFrameをxlwingsを使ってExcelへ

pandasのDataFrameをxlwingsを使ってExcelへ

動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2106 ビルド14131.20278 Microsoft Store)+ Python 3.8.3 + xlwings 0.24.5 + pandas 1.3.1

「xlwings range pandas」
といった検索キーワードに気がつきました。

ここでは、pandasのDataFrameを、xlwingsを使ってExcelのワークシートに出力するサンプルをご紹介します。

pandasのDataFrameをxlwingsでExcelへ出力するサンプル

以下のスクリプトを実行してみてください。

import xlwings as xw
import pandas as pd

sample_table = {
    'name':['太郎', '次郎', '三郎',],
    'score':[100, 200, 300,],
}
df = pd.DataFrame(data=sample_table)

bk = xw.Book()
ws = bk.sheets[0]

ws.range('A1').options().value = df
ws.range('A6').options(index=False).value = df
ws.range('A11').options(index=False, header=False).value = df

新規Excelブックの先頭シートに、下図のようにDataFrameがいくつかの形式で出力されます。

pandasのDataFrameをxlwingsを使ってExcelへ出力した結果

サンプルスクリプトで行っている処理

サンプルスクリプトで行っている処理は以下のとおりです。

DataFrameの準備

import後に行っている、
  sample_table = {
      'name':['太郎', '次郎', '三郎',],
      'score':[100, 200, 300,],
  }
  df = pd.DataFrame(data=sample_table)
の部分は、下図のようなpandasのDataFrameを作成しているコードです。

「pd.DataFrame(data=sample_table)」の確認

Bookの作成とSheetの代入

DataFrameを用意したら、ブックを新規に作成して、
  bk = xw.Book()
先頭のSheetを変数wsに代入しておきます。
  ws = bk.sheets[0]

DataFrameの出力

その後先ほどのDataFrameを、いくつかの方法でワークシートに出力しています。
  ws.range('A1').options().value = df
  ws.range('A6').options(index=False).value = df
  ws.range('A11').options(index=False, header=False).value = df

Range.optionsメソッドに引数を何も指定しない場合は、
  ws.range('A1').options().value = df
DataFrameがそのままワークシートに出力されます。

「ws.range('A1').options().value = df」の結果

Range.optionsメソッドの引数indexにFalseを指定した場合は、
  ws.range('A6').options(index=False).value = df
先ほどはA列にあったindexが出力されません。

「ws.range('A6').options(index=False).value = df」の結果

Range.optionsメソッドの引数headerにもFalseを指定した場合は、
  ws.range('A11').options(index=False, header=False).value = df
ヘッダー(列名・フィールド名)も出力されません。

「ws.range('A11').options(index=False, header=False).value = df」の結果

最終更新日時:2023-10-13 11:48

[スポンサードリンク]

Home » Python » xlwingsの使い方 » pandasのDataFrameをxlwingsを使ってExcelへ

「xlwingsの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.