【Excel】セルの列名を取得する方法とは?

Excelを使ってデータを管理していると、自分が作業しているセルの列名(A, B, C など)を取得したい場面があります。本記事では、Excelで列名を取得する方法を詳しく解説します。

 

sponsor link

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柔軟に対応可能マクロを有効化する必要がある

目的に応じて適した方法を選びましょう!

コメント

タイトルとURLをコピーしました