自堕落マクロVBA

【VBAマクロ】Excelの列をアルファベットから数値に変換取得する

<サンプルコード>

Sub 列アルファベット数値変換()

 

Dim rng As Range
Dim Col_Alp As Variant

 

'Col_Alpに数値化したい列のアルファベットを文字列で入れる
Col_Alp = "AB"

 

'仮セルを作ってRange型に格納(行は何でもいい)
Set rng = Cells(1, Col_Alp)

 

'rangeの列を.Columnで取り出し
Col_Alp = rng.Column

 

MsgBox Col_Alp

 

End Sub

<実行例>

VBAマクロの解説

 

String型変数に列のアルファベットを入れ
Cells仮のセルを作りRange型に入れることで
列の位置を取得できる.Columnを使えるようになります。

 

あとはLong型の変数に格納すれば,
Excelの列のアルファベットを数値に変換した値が取得できます。

 

今回は列のアルファベットを格納する変数Variant型にすることで
数値に変換した後も格納できるようにしました。

 

列の文字列を格納する変数をPublic型にしてユーザーフォームと組み合わせれば
ユーザーフォームで列のアルファベットを入力するだけで数値に変換したものが表示できるようにもなります。

 

 

是非お試しください。

page top