Python Excelのセルから値を取得する

PythonではExcelのセルから値を取得することができます。

Excelのセルは最小単位であり、セルに値が保持されています。Excelからデータを取得するにはセルにアクセスする必要があります。

今回は、Excelのセルから値を取得する方法を解説します。

Excelのセルから値を取得する

構文

import openpyxl

# ブックを取得
ブック変数 = openpyxl.load_workbook(ファイル名)
# シートを取得 
シート変数 = ブック変数['シート名']
# セルを取得
シート変数.['セル番地'].value
シート変数.cell(row=行No.,column=列No.).value

PythonでExcel操作をするには、「openPyXl」パッケージが便利です。「openPyXl」を事前にダウンロード・インストールしておく必要があります。

参照外部パッケージ OpenPyXLをインストールする方法

Excelのセルを取得するには、「ファイル」→「ブック」→「シート」→「セル」という順にとだっていきます。

セルの指定は、「A1」「B1」で指定するパターン、行列を数値で指定するパターンの2種類があります。行列を数値で指定するパターンの方がPythonでは扱いやすいですね。

例1. Excelのセルからデータを取得する(A1,B2指定)

import openpyxl

# ブックを取得
book = openpyxl.load_workbook('C:\\pg\\人口一覧.xlsx')
# シートを取得 
sheet = book['sheet1']
# セルを取得
sheet['A9'].value
#[結果] '年 齢'

この例では、まずExcel「C:\pg\人口一覧.xlsx」のブックを取得しました。そしてブックにシート名を指定し、シートにセル番地「A9」を指定して、セルから値を取得しました。

実際のEXCELファイルを確認すると正しいことがわかります。

例2. Excelのセルからデータを取得する(セル数値を指定)

import openpyxl

# ブックを取得
book = openpyxl.load_workbook('C:\\pg\\人口一覧.xlsx')
# シートを取得 
sheet = book['sheet1']
# セルを取得
sheet.cell(row=9,column=1).value
#[結果] '年 齢'

この例では、例1と同じことをしました。セル番地の指定を数値で行いました。

「A9」セルは、「行9、列1」のことなので、「row=9,column=1」とします。

注意点. セルの指定の仕方

注意点として、例1では「sheet[‘A9’].value」のようにセル番地を[](角括弧)で指定しますが、セルを数値で指定する場合は「sheet.cell(row=9,column=1).value」のようにセル番地を()(丸括弧)で指定します。

「A9」セルを指定する

  1. sheet[‘A9’].value
  2. sheet.cell(row=9,column=1).value

 

これでExcelのセルから値を取得することができました。

参照:https://openpyxl.readthedocs.io/en/stable/#

以上、PythonでExcelのセルから値を取得する方法でした。

コメント