2

无论如何我可以在excel(VBA)中找到函数VLOOKUP的源代码以便我可以修改它?谷歌没有给我任何帮助。谢谢!

4

3 回答 3

7

Excel/VBA 不是开源的,因此特定函数的源代码不可用。

您可以在 VBA 中编写自己的 UDF(用户定义函数)来生成修改后的版本。

在http://www.cpearson.com/Excel/FlexLookup.aspx还有一个更灵活(非 VBA)版本的 VLOOKUP/HLOOKUP

于 2012-09-14T02:35:22.487 回答
0

根据对我不起作用的 Vahid 的回答,我做了以下有效的代码:

Function CUSTOMVLOOKUP(lookup_value As String, table_array As Range, col_index_num As Integer)
    Dim i As Long
    For i = 1 To table_array.Rows.Count
        If lookup_value = table_array.Cells(i, 1) Then
            CUSTOMVLOOKUP = table_array.Cells(i, col_index_num)
            Exit For
        End If
    Next i
End Function
于 2017-06-02T13:33:37.670 回答
-2

这是 Vlookup 的简单实现:

        Public Function VLOOKUP1(ByVal lookup_value As String, ByVal table_array As Range, ByVal col_index_num As Integer) As String
        Dim i As Long

        For i = 1 To table_array.Rows.Count
            If lookup_value = table_array.Cells(table_array.Row + i - 1, 1) Then
                VLOOKUP1 = table_array.Cells(table_array.Row + i - 1, col_index_num)
                Exit For
            End If
        Next i

        End Function
于 2016-10-31T12:01:13.787 回答