函数返回字母列和值VBA

时间:2014-07-14 18:10:09

标签: excel-vba vba excel

我一直在不同的网站上阅读如何创建一个函数,该函数获取一个字符串作为参数,这是excel中列的名称(列的名称由第4行中的值定义;名称,状态,电话等)并返回两个值;列字母(A,B,C,D等)和列标题(名称,状态,电话)。到目前为止,我有这个函数返回找到标题的列的字母,但我不知道如何修改此函数,因此它返回列字母和列标题。此函数的参数是从数组中检索的列标题。可能我不能使用一个参数并得到两个值,不确定。我将不胜感激任何帮助。谢谢

 Function ColumnLetters(r As Range) As String
 Dim i As String
 i = r.Address(False, False)
 ColumnLetters = Left(i, Len(i) - Len(Format(r.row, "0")))
 End Function

1 个答案:

答案 0 :(得分:2)

Sub Tester()

    Dim a
    a = ColumnInfo(Range("D10"))
    msgbox "Column: " & a(0) & "   Header: " & a(1)

End sub


Function ColumnInfo(r As Range)

     Set r = r.Cells(1)EntireColumn 

     ColumnInfo = Array(Replace(r.Cells(1).Address(False, False), "1", ""), _
                        r.Cells(4).Value)
End Function