宏来动态增加excel的列名

时间:2014-10-31 07:21:24

标签: excel vba excel-vba excel-2007

Excel单元格 - 单元格(1,“Z”)包含一些值。 现在我想在Z之后写10个单元格。它将是Cells(1,“AJ”)。 我可以写宏,它会在'Z'中添加10并给我excel列名,即AJ?

1 个答案:

答案 0 :(得分:2)

您可以为项目添加两个功能:

  1. 第一个,将字母转换为相应的列号;
  2. 第二个,将数字(加法后)重新转换为字母。
  3. 所以你走了:

    Sub YourMacro()
    
    columnLetter = ColLtr(ColNum("Z") + 10)
    MsgBox columnLetter
    
    End Sub
    
    Function ColLtr(iCol As Long) As String
        If iCol > 0 And iCol <= Columns.Count Then
            ColLtr = Evaluate("substitute(address(1, " & iCol & ", 4), ""1"", """")")
        End If
    End Function
    
    Function ColNum(iCol As String) As Long
        ColNum = Range(iCol & 1).Column
    End Function
    

    然后根据您的需要重新编写代码,这只是简单地返回“Z之后的10列”的字母版本。

相关问题