作者:绿色风
分类:
时间:2022-08-17
浏览:126
楼主 chrisfang |
Q:如何制作不需要限定位置的查询函数? A:Vlookup函数和Hlookup函数在进行查询时,必须以Table_array的首行或首列作为查询对象所在的基准位,当数据表中存在多个列标题或行标题时,使用上述两个函数进行查询就不太方便。要制作没有限定查询位置的自定义函数,可参考如下代码:- Function xlookup(lookupvalue, table_array As Range, Optional index = 1, Optional opt = 0)
- For Each i In table_array
- If i.Value = lookupvalue Then
- If opt = 1 Then
- xlookup = i.Offset(index, 0).Value
- Else
- xlookup = i.Offset(0, index).Value
- End If
- End If
- Next
- End Function
效果图:
说明: 函数第一参数为查询目标, 第二参数为目标区域, 第三参数为查询结果的列偏移或行偏移,默认为1(即向右或向下偏移一个单元格),可省略。 第四参数为查询方式,默认为0,表示纵向查询(与Vlookup函数方式相同),参数为1时表示横向查询(与Hlookup函数方式相同),可省略。
自定义函数_任意位置查询.rar |
2楼 海洋之星 |
学习了 |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一