gpt4 book ai didi

vba - 从另一个工作簿使用 Vlookup 时遇到问题

转载 作者:行者123 更新时间:2023-12-04 21:59:45 25 4
gpt4 key购买 nike

我打算使一些工作或多或少自动化,为此我正在考虑使用 Excel VBA。基本上我想要一个单独的工作簿来从一些不同的工作簿中获取数据。

为此,我尝试过:

Dim openWb As Workbook
Dim openWs As Worksheet

Path = Dir("PathToFile\File.xlsx")
filepath = "PathToFile"

Set openWb = Workbooks.Open(filepath & Path)
Set openWs = openWb.Sheets("Sheet1")

currentwb.Sheets("Sheet2").Cells.(2, 20).Value = openWs.VLOOKUP("John",openWs.Range("A1:S30"), openWs.Match("Age", openWs.Range(A1:S1))

我想要实现的基本上是从“John”对应的行和“Age”对应的列中获取一个值。我正在使用具有相当大范围(而不仅仅是一列)的匹配,以避免其他人更改文件会导致任何问题的情况。

这给了我行上的语法错误:
Value = openWs.VLOOKUP("John",openWs.Range("A1:S30"), openWs.Match("Age", openWs.Range(A1:S1))

我认为这与我如何在 VLookUp 参数中使用“openWs”等有关。谁能指出我认为错误的地方?

我使用 Path 和 filepath 作为变量,因为程序稍后每个月都会有一个新的 Path 和一个新的文件路径,这是我知道实现这一目标的最佳方式(基本上,路径和文件路径由月份名称和年份名称组成我根据今天的日期进行连接)。

最佳答案

将 Match 和 VLOOKUP 前面的所有“openWs”替换为“Application”,使其显示为:

Value = Application.VLOOKUP("John",openWs.Range("A1:S30"), Application.Match("Age", openWs.Range("A1:S1")))

关于vba - 从另一个工作簿使用 Vlookup 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37485818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com