Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 5122|回复: 12

【求问】提取vba编辑器里的光标位置

[复制链接]
发表于 2011-9-13 15:26 | 显示全部楼层 |阅读模式
5学分
所谓光标不知道表示清楚没有,就是vba编辑器里面,如果打字,该字就显示的位置

希望提取如下
A1单元格是该光标所在的模块名称
B1单元格是该光标所在的过程名称
C1单元格是该光标所在的行数

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2011-9-14 02:49 | 显示全部楼层
回复

使用道具 举报

发表于 2011-9-14 09:35 | 显示全部楼层
Application.VBE.SelectedVBComponent.Name
获取模块名。
Application.VBE.CodePanes(1).GetSelection
获取行数
回复

使用道具 举报

 楼主| 发表于 2011-9-15 03:54 | 显示全部楼层
回复 liuguansky 的帖子

测试如下
Application.VBE.SelectedVBComponent.Name
——没有得到正确模块名称,光标不一定在运行宏的里面


Application.VBE.CodePanes(1).GetSelection
——.GetSelection提示参数不可选


回复

使用道具 举报

发表于 2011-9-15 09:15 | 显示全部楼层
静待学习中……
回复

使用道具 举报

发表于 2011-9-15 10:52 | 显示全部楼层
  1. Sub test()
  2.     'SelectedVBComponent 属性示例
  3.     '下列示例使用 SelectedVBComponent 属性返回被选择的部件。
  4.     Debug.Print Application.VBE.SelectedVBComponent.Name
  5. End Sub
复制代码
以上是帮助示例。

因为属性/方法列表中,VBE下激活的属性只提供了以下三个:

Application.VBE.ActiveCodePane
Application.VBE.ActiveVBProject
Application.VBE.ActiveWindow

所以个人猜测,常规办法只能精确到部件。
不知api或其它方法可不可以。
回复

使用道具 举报

 楼主| 发表于 2011-9-15 11:00 | 显示全部楼层
回复 爱疯 的帖子

三句话都提示错误如下,不知道怎么搞的

bef18c2f41b816e911154f96fa6ba6d6.jpg
回复

使用道具 举报

发表于 2011-9-15 11:10 | 显示全部楼层
6楼代码本身没问题,测试过OK,是帮助本身的示例。
7楼错误,需要查看你运行的附件,才好判断。
回复

使用道具 举报

 楼主| 发表于 2011-9-15 11:21 | 显示全部楼层
回复 爱疯 的帖子

Book1.rar (26.71 KB, 下载次数: 4)
回复

使用道具 举报

发表于 2011-9-15 11:33 | 显示全部楼层

  1. Sub Macro1()
  2.     Dim x, y, z
  3.     Set x = Application.VBE.ActiveCodePane      '返回 CodePane 对象
  4.     Set y = Application.VBE.ActiveVBProject     '返回 VBProject 对象
  5.     Set z = Application.VBE.ActiveWindow        '返回 Window 对象
  6.     Cells(1, 1) = Application.VBE.SelectedVBComponent.Name
  7.     Stop
  8. End Sub
复制代码
因为前3次返回的是对象,所以赋值时需要加set;而最后1次,返回的字符串,所以可以不用加。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-26 10:05 , Processed in 0.151816 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表