gpt4 book ai didi

vba - 如何在VBA编辑器中跳转到行号?

转载 作者:行者123 更新时间:2023-12-01 18:34:57 25 4
gpt4 key购买 nike

我在 Office 2010 中使用 VBA。顶部有一个包含行号和列号的框,例如:

Ln 1480, Col 17

有没有办法在代码编辑中(而不是在执行中)直接跳转到另一个行号,就像我在记事本中使用Ctrl+G一样? This MSDN answer表明这是不可能的,但我希望有人找到了一种方法来进行这种编辑器导航。

我知道可以只单击下拉列表中的过程名称,但不幸的是,我正在使用一些长达数百行的过程,在我重构它们之前,如果能够包含它们那就太好了我的错误跟踪器中的行号,并在解决问题时跳转到该行。

最佳答案

为 VBA IDE 创建您自己的 JumpToLine 过程

创建一个名为mdlJumpToLine的新模块并添加以下方法:

Public Sub JumpToLine(line As Long)
Application.VBE.ActiveCodePane.SetSelection line, 1, line, 1
End Sub

举个例子,如果您想跳转到当前代码 Pane 中打开的代码模块或类中的第 1,234 行,请在立即出现窗口并按 Enter 键。 如果该行已经在 View 中,则不会执行任何操作,但如果它不在屏幕范围内,它将自动滚动到屏幕中心

信任对 VBA 项目对象模型的访问

如果您收到此错误“对象‘_Application’的方法‘VBE’失败”,您将必须以编程方式访问受信任的 VBE。您可以通过(在 Excel 2007 中)转至 Excel 主窗口(不是 VBA IDE)并单击"file"--->“选项”--->“信任中心”--->“信任中心设置”来执行此操作"---> “宏设置”并选中“信任对 VBA 项目对象模型的访问”复选框。从那时起,JumpToLine 方法就应该可以工作了。

关于vba - 如何在VBA编辑器中跳转到行号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32381879/

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