gpt4 book ai didi

excel - 为什么 Range.Find() 方法如此令人困惑?

转载 作者:行者123 更新时间:2023-12-02 02:14:55 26 4
gpt4 key购买 nike

此代码给我一个 424 错误“需要对象”。

Dim playerLocation As Range
Set playerLocation = Sheets("World Map").UsedRange.Find("&").Address

这很好用

Set playerLocation = Sheets("World Map").UsedRange.Find("&")

但是当我将它们放入即时窗口时:

?Sheets("World Map").UsedRange.Find("&").Address
$T$18
?Sheets("World Map").UsedRange.Find("&")
&

这只是我的问题还是这完全是回话? Range 变量不接受 range 对象吗?但是当我明确地给它单元格的地址时,它会产生错误。我很困惑。

最佳答案

来自Microsoft 、Range.Find方法:

Return value:
A Range object that represents the first cell where that information is found.

但是,Range.Address property :

Returns a String value that represents the range reference in the language of the macro.

也许一种思考方式是,通过显式使用 .Address,您请求一个字符串。您并不是在要求一个对象(Range)。如果是的话,您就可以正确声明您的对象并省略 .Address

当然,您始终可以从 Range 变量获取 Address 属性...Dim findRng as Range//Set findRng = Worksheets(1 ).Cells.Find("something")//debug.print findRng.Address.

您还可以访问all other Range properties现在,所以当我个人需要使用 Find 时,我倾向于将其设置为 Range,这样我就不必在以后“向后工作”(如果我想的话) ,例如将单元格加粗等等。

关于excel - 为什么 Range.Find() 方法如此令人困惑?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59631040/

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