前回は、openpyxlを使って新しいExcelファイルを作成・保存する方法を解説しました。今回の記事はその続きになりますので、まだの方は先に前回の記事をご覧ください。

第2問 セルを1つずつ指定してデータを入力しよう
今回は、Excelのセルを1つずつ指定してデータを入力する練習です。
問題
新しいExcelファイルを作成し、次のような表を作成してください。
| A | B | |
|---|---|---|
| 1 | 商品名 | 在庫数 |
| 2 | りんご | 120 |
| 3 | みかん | 180 |
| 4 | バナナ | 90 |
| 5 | ぶどう | 250 |
条件
openpyxlを使用する- 新しい
Workbookを作成する - シートはデフォルトの「Sheet」を使用する
- セルを1つずつ指定して値を入力すること
- 例:
sheet["A1"] = "商品名"
- 例:
append()は使用しない- 最後に「商品リスト.xlsx」という名前で保存する
完成イメージ
| A列 | B列 |
|---|---|
| 商品名 | 在庫数 |
| りんご | 120 |
| みかん | 180 |
| バナナ | 90 |
| ぶどう | 250 |
チャレンジ!
コードが完成したら実行し、「商品リスト.xlsx」が作成されることを確認しましょう。
解答
import openpyxl
wb = openpyxl.Workbook()
sheet = wb.active
sheet['A1'] = '商品名'
sheet['A2'] = 'りんご'
sheet['A3'] = 'みかん'
sheet['A4'] = 'バナナ'
sheet['A5'] = 'ぶどう'
sheet['B1'] = '在庫数'
sheet['B2'] = 120
sheet['B3'] = 180
sheet['B4'] = 90
sheet['B5'] = 250
wb.save('商品リスト.xlsx')
解答の解説
① openpyxlをインポート
import openpyxl
openpyxlを使うためにインポートします。
② 新しいExcelファイルを作成
wb = openpyxl.Workbook()
Workbook()を使うことで、新しいExcelファイル(ワークブック)が作成されます。
③ シートを取得
sheet = wb.active
作成されたワークブックのアクティブなシートを取得します。
今回は新しいワークブックを作成したので、最初からあるSheetが選ばれるはずです。
このシートにデータを書き込んでいきます。
④ セルを指定して値を入力
sheet['A1'] = '商品名'
sheet['A2'] = 'りんご'
sheet['セル番号'] = 値
という書き方で、指定したセルにデータを入力できます。
例えば、
A1→ 「商品名」A2→ 「りんご」B2→120
というように、セルを1つずつ指定して入力しています。
今回は練習のため、すべてのセルを個別に指定しました。
⑤ Excelファイルを保存
wb.save('商品リスト.xlsx')
最後にsave()を使ってExcelファイルを保存します。
これを実行すると、プログラムと同じフォルダに**「商品リスト.xlsx」**が作成されます。
私はいつもファイル名に拡張子.xlsx を付け忘れて保存字にエラーになるので注意です!
おわりに
今回の問題では、セルを1つずつ指定してデータを書き込む方法を学びました。
この方法は、Excel操作の基本となる書き方です。
次回は、このコードをもっと短く書ける**append()やfor文**を使った方法に挑戦していきましょう。

コメント