「アルファベット→数値」変換関数
Range関数で使用している列記号をCells関数に渡す場合に便利です。
例:「A→1」「B→2」「C→3」…「Z→26」「AA→27」
図1下側「Sub test()」内の行にカーソルを合わせた状態でVBE「」ボタンを押すと図2入力画面が表示されます。
Function Henkan2(ByValpoleNo)
'アルファベット→数値
Dim AZ(6)
AZ(1) = poleNo
If Len(AZ(1)) = 1 Then
AZ(2) = InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ", StrConv(AZ(1), 1))
AZ(6) = AZ(2)
Else
AZ(3) = InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ", Left(StrConv(AZ(1), 1), 1)) * 26
AZ(4) = AZ(3) + InStr("ABCDEFGHIJKLMNOPQRSTUVWXYZ", Right(StrConv(AZ(1), 1), 1))
AZ(6) = AZ(4)
End If
Henkan2 = AZ(6)
End Function
Sub test()
Q = InputBox("列番号を求めたい列記号(アルファベット)を入力してください")
End Sub
図1:プログラムの内容
図2:InputBox
図3:MsgBox