excel - VBA:使用具有动态查找值的 VLOOKUP 公式
问题描述
在对工作表执行格式化后,我试图将 VLOOKUP 公式嵌入到我的最后一列中。我的查找值适用于具有以下列标题的列:“公司状态”。这是我目前的流程:
使用列标题查找列号:“公司状态”:
CompanyStateColumnNumber = WorksheetFunction.Match("Company State", ws.Range("1:1"), 0)
声明查找范围。在这种情况下,它存在于不是活动工作簿/工作表的工作表/工作簿中。因此,我使用(我已经将 TZsrcRange 声明为 Range 类型)引用它:
Set TZsrchRange = TemplateWS.Range("A:C")
现在,我正在尝试将 vlookup 嵌入到我的最后一列(我在工作表中找到了我的最后一列,它存储在变量“NewestLCol”中。我想将它嵌入到列中,直到最后一行(存储在变量中) “最后一行”):
For x = 2 To LastRow Set dynamic_lookup_value = Cells(x, CompanyStateColumnNumber) Cells(x, NewestLCol).Formula = " =VLOOKUP(" & _ dynamic_lookup_value.Address(0, 0) & _ ", Templatews.Range(A:C).Address(0,0),3, FALSE)" Next x
现在,当我运行它时,它没有嵌入公式,也没有给我一个值。我的问题可能是什么?
解决方案
尝试用这个替换你的公式分配
Cells(x, NewestLCol).Formula = "=VLOOKUP(" & _
dynamic_lookup_value.Address(0, 0) & _
"," & _
TZsrchRange.Address(External:=True) & _
",3, FALSE)"
推荐阅读
- dictionary - 如何更新地图中的结构属性
- python - Python 列表有列吗?
- python - 为什么python中的csv只写最后一行?
- php - php 7 调用未定义函数 bcpowmod()
- javascript - 十进制格式验证
- java - 知道如何解决这个问题吗?线程“WindowsNativeRunloopThread”中的异常 java.lang.NoSuchMethodError
- python-3.x - 从excel表制作python字典
- c# - Button_Clicked 事件操作特定元素(纯 C# (Page.cs))
- android - Android 未经检查的分配
- forms - 您如何访问 Gravity Form 字段预提交?