python openpyxlを使ってEXCELのセルの行列の数値指定からA1形式を取得する

python openpyxlを使ってEXCELのセルの行列の数値指定からA1形式を取得する

pythonで、ライブラリopenpyxlのcoordinateを使用して、EXCELのセルの行列の数値指定からA1形式を取得するサンプルコードを記述してます。pythonのバージョンは3.8.5を使用してます。

環境

  • OS windows10 pro 64bit
  • python 3.8.5

openpyxlインストール

openpyxlをインストールされていない方は、pipでインストールしておきます。

pip install openpyxl

<出力結果>
Successfully installed et-xmlfile-1.0.1 jdcal-1.4.1 openpyxl-3.0.5

coordinate使い方

coordinateを使用すると、EXCELのセルの行列の数値指定からA1形式の値を取得することが可能です。

import openpyxl

sheet変数.cell(row=2,column=1).coordinate
# A2

以下は、「sample.xlsx」を読み込んでセルの位置を数値してA1形式の値を取得するサンプルコードとなります。

import openpyxl

# EXCLEファイル読み込み
wb = openpyxl.load_workbook("sample.xlsx")

# シートを選択
sheet1 = wb["Sheet1"]

# セルを取得 
print( sheet1.cell(row=3,column=1).coordinate )
# A3

# 行番号を取得する場合はcolumn
print( sheet1.cell(row=3,column=2).column )
# 2

# 保存
wb.save('sample.xlsx')

utils.get_column_letterを使用して取得することも可能です。

openpyxl.utils.get_column_letter(列番号) + '行番号'

サンプル

print( openpyxl.utils.get_column_letter(1) + '3' )
# A3