teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

補足を追加

2020/11/15 02:48

投稿

Daregada
Daregada

スコア11990

answer CHANGED
@@ -4,4 +4,8 @@
4
4
  with pd.ExcelWriter('output.xlsx', mode='a') as writer:
5
5
  df.to_excel(writer, sheet_name='シート名')
6
6
  ```
7
- しかし、これを行なっても、既存のシートにデータが追加されるわけではなく、新しいシートが追加されるだけですね。
7
+ しかし、これを行なっても、既存のシートにデータが追加されるわけではなく、**新しいシートが追加**されるだけですね。
8
+
9
+ 既存のシートにデータを追加するには、openpyxlを使って、自分でセルに追記する必要があるでしょう。以下のリンクの「任意の位置のセルに2次元配列を書き込み」あたりが参考になるのでは。
10
+
11
+ [PythonでExcelファイル(xlsx)を読み書きするopenpyxlの使い方 | note.nkmk.me](https://note.nkmk.me/python-openpyxl-usage/)

1

説明を修正

2020/11/15 02:48

投稿

Daregada
Daregada

スコア11990

answer CHANGED
@@ -1,3 +1,7 @@
1
- `to_excel`には`mode`は指定できません。pandasの`ExcelWriter`を使ってください。以下のリンクの最後辺り書かれている「DataFrameを既存のExcelファイルに書き込み(追記)」が参考になるでしょう
1
+ `to_excel`には`mode`は指定できません。pandasの`ExcelWriter`を使う例が公式ファレ載っています
2
2
 
3
+ ```Python
3
- [pandasでExcelファイル(xlsx, xls)の書き込み(to_excel) | note.nkmk.me](https://note.nkmk.me/python-pandas-to-excel/)
4
+ with pd.ExcelWriter('output.xlsx', mode='a') as writer:
5
+ df.to_excel(writer, sheet_name='シート名')
6
+ ```
7
+ しかし、これを行なっても、既存のシートにデータが追加されるわけではなく、新しいシートが追加されるだけですね。