HOME > 即効テクニック > Excel VBA > セル操作関連のテクニック > 選択範囲の最初のセルの右端がアルファベットの場合に、それを連番として付与する

即効テクニック

セル操作関連のテクニック

選択範囲の最初のセルの右端がアルファベットの場合に、それを連番として付与する

(Excel 97/2000)
サンプルマクロは、セル範囲を選択して実行すると、選択範囲の最初のセルの右端がアルファベットだった場合には、右端の文字をそれに続くアルファベットに変換したものを次のセルに記述します。ただし、選択セル範囲のセル数は最大256個です。
Sub Sample()

    Dim i As Long
    Dim myStr As String
    Dim myBody As String
    Dim myKey As String
    Dim myNew As String
    
    myStr = Selection.Cells(1).Value
    myBody = Left(myStr, Len(myStr) - 1)
    myKey = Right(myStr, 1)
    
    For i = 2 To Selection.Cells.Count
        Select Case Asc(myKey)
            Case Asc("A") To Asc("Z")
                myNew = Columns(Columns(myKey).Column + i - 1).Address(, False)
                myNew = Left(myNew, InStr(myNew, ":") - 1)
            Case Asc("a") To Asc("z")
                myNew = Columns(Columns(myKey).Column + i - 1).Address(, False)
                myNew = Left(myNew, InStr(myNew, ":") - 1)
                myNew = StrConv(myNew, vbLowerCase)
            Case Else
                myNew = myKey
        End Select
        Selection.Cells(i).Value = myBody & myNew
    Next
    
End Sub