Excelを使ってデータを管理していると、自分が作業しているセルの列名(A, B, C など)を取得したい場面があります。本記事では、Excelで列名を取得する方法を詳しく解説します。
Excelの列名とは?
Excelの列は「A, B, C, …」というアルファベットで表されます。数値の行番号とは異なり、列名を直接取得する関数はありませんが、工夫することで簡単に取得できます。
列名を取得する方法
方法1: ADDRESS 関数と SUBSTITUTE 関数を使う
以下の式を入力すると、現在のセルの列名を取得できます。
=SUBSTITUTE(ADDRESS(ROW(), COLUMN(), 4), ROW(), "")
解説
ADDRESS(ROW(), COLUMN(), 4)
で、セルのアドレス(例:A1
)を取得SUBSTITUTE(..., ROW(), "")
で、行番号(例:1
)を削除し、列名"A"
のみを取得
方法2: CELL 関数と MID, FIND を使う
=MID(CELL("address", A1), 2, FIND("$", CELL("address", A1), 2) - 2)
解説
CELL("address", A1)
で、セルのアドレス(例:"$A$1"
)を取得MID(..., 2, FIND("$", ..., 2) - 2)
で、列名"A"
を取り出す
マクロ (VBA) を使って列名を取得する
VBA(Visual Basic for Applications)を使うことで、選択したセルの列名を簡単に取得できます。
Function GetColumnLetter(rng As Range) As String
GetColumnLetter = Split(rng.Address, "$")(1)
End Function
この関数を作成し、Excelのセルに以下のように入力すると、列名を取得できます。
=GetColumnLetter(A1)
まとめ
この記事では、Excelでセルの列名を取得する方法を紹介しました。
Excelで列名を取得する方法は複数あります。
方法 | メリット | デメリット |
---|---|---|
ADDRESS + SUBSTITUTE | 簡単に使える | 少し長い式になる |
CELL + MID + FIND | シンプルで理解しやすい | CELL 関数が環境依存する可能性あり |
VBA | 柔軟に対応可能 | マクロを有効化する必要がある |
目的に応じて適した方法を選びましょう!
コメント