在单独的工作簿中返回特定值的单元格位置

澄清。 我有1个电子表格我正在创buildVBA中。macros运行时,我希望代码find一个单独的工作簿表中的特定值,并返回其他工作簿中值的位置。

我最初的想法是使用HLookUp,但是只会返回值,而不是值的位置。 我的下一个想法是使用查找function,但我不能让它运行。 我得到的错误是:运行时错误“438”:对象不支持此属性或方法

startValue = enrollBook.Sheets("Pop-FY").Range("D:Z"). _ Applications.WorksheetFunction. _ Find(What:=FYString, LookIn:=xlValues) 

enrollBook是另一个工作簿。 startValue应该是其他电子表格中find的值的位置

这是一个很奇怪的方式调用一个函数和格式你已经到了那里,我第一次甚至认为代码是无效的。

首先,您将Range.FindApplication.WorksheetFunction.Find混淆。 你需要一个Range ,但是正在调用另一个。
其次,错误是因为它是Application ,而不是Applications
第三,你需要一个Set

 Set startValue = enrollBook.Sheets("Pop-FY").Range("D:Z").Find(What:=FYString, LookIn:=xlValues) 

你的意思是这样吗?

 Dim sTest As String Dim oRange As Range Set oRange = Worksheets(1).Range("A1:Z10000").Find("Test", lookat:=xlPart) MsgBox oRange.Address 

我testing了这个,但是你需要改变你的参数。