こんんちはーー
pythonを使ったエクセル編集を勉強しているロペです。
仕事でエクセル/csvのデータ解析をすることが多く、
VBAよりも簡単そうでライブラリも多そうだったのでいきなりPythonから始めました。
(簡単そうというのは完全イメージですが)
もはや今では、エクセルでの作業を手動で行うなんて時間がもったいないと思います。
さて、今回はエクセルの列番号を数値で指定する方法が分かったので記事しました。
ググりながら勉強して、ネットの記事にはいつも助けられているので、この記事も誰かの役に立ったら幸いです。
概要
Pythonでは、エクセルの列をアルファベットで指定する場合がありますが、
プログラム作成していると、番号で指定したい時があります。
↓みたいな感じで、列番号をアルファベットに変換できたら楽だと思ったのがきっかけです。
1 | A |
2 | B |
3 | C |
4 | D |
5 | E |
6 | F |
7 | G |
8 | H |
9 | I |
10 | J |
11 | K |
12 | L |
13 | M |
14 | N |
15 | O |
16 | P |
17 | Q |
18 | R |
19 | S |
20 | T |
21 | U |
22 | V |
23 | W |
24 | X |
25 | Y |
26 | Z |
アルファベットに変換する関数
↓のように関数を作成することで、番号をアルファベッドに変換することができます。
※A列~ZZ列までに対応しており、A列~ZZZ列まで対応するには別の関数を作成する必要があります。
def alphabet_convert (number):
i = int((number-1)/26)
j = int(number-(i*26))
alphabet = ”
for z in i,j:
if z != 0:
alphabet += chr(z+64)
return alphabet
この関数で数値をアルファベッドに変換することができます。
例えば、
alphabet_convert (2)
‘B’
と変換されます。
以上になります!
ではまた!!
コメント