excel 怎样在鼠标移至单元格时,根据单元格内容,自动添加批注?

xiamiwagua 2018-03-20 12:01:18
excel中,鼠标移动到一个单元格上时,如果已经添加了批注,会自动显示批注。
现在想实现,鼠标移动到一个单元格上时,没有批注自动添加批注的效果。
单元格内容为姓名,自动添加另一个excel表中的对应姓名人员的简历内容为批注。请教各位高手。
...全文
1124 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
o大耳鼠o 2018-03-21
  • 打赏
  • 举报
回复
引用 6 楼 Chen8013 的回复:
[quote=引用 5 楼 sniperhgy 的回复:] 楼主,你的要求需要写鼠标Hook了,VB可以实现,VBA的不太确定。
估计“鼠标全局消息HOOK”还是可以的,VBA中也能搞。 [/quote] 哦哦,好的,我去查查看。
舉杯邀明月 2018-03-21
  • 打赏
  • 举报
回复
引用 5 楼 sniperhgy 的回复:
楼主,你的要求需要写鼠标Hook了,VB可以实现,VBA的不太确定。
估计“鼠标全局消息HOOK”还是可以的,VBA中也能搞。
o大耳鼠o 2018-03-21
  • 打赏
  • 举报
回复
楼主,你的要求需要写鼠标Hook了,VB可以实现,VBA的不太确定。
赵4老师 2018-03-21
  • 打赏
  • 举报
回复
自绘是早晚要学会的技能。
脆皮大雪糕 2018-03-21
  • 打赏
  • 举报
回复
换个思路,遍历指定的单元格。如果有批注就算了,没有批注就根据规则给他加上。 这样鼠标只要挪上去就可以看到批注。 你要的效果不就是鼠标挪到单元格上跳出批注么?为毛一定要鼠标挪上去才添加批注。
X-i-n 2018-03-20
  • 打赏
  • 举报
回复
不知道你要的是哪种效果,所有单元格鼠标点上去的时候会显示批注来?还是说根本不设置批注,但是鼠标点上去会模拟出批注的效果。 第一种,因为除非强制显示所有批注,否则只有被鼠标指着的单元格才会显示批注出来。所以只要循环遍历每个单元格,挨个加上批注并隐藏就行,并不需要依靠代码临时动态(当然也可以临时设置,不过多此一举了,除非你需要显示的内容实时在变化)。
    Sheet1.Range("B2").AddComment
    Sheet1.Range("B2").Comment.Visible = False
    Sheet1.Range("B2").Comment.Text Text:="asdfasdf"
第二种,无法实现鼠标MouseOver的时候显示批注,只能在SelectionChange事件里写代码。具体的操作是:创建一个文本框,随着鼠标选中不同的单元格,为这个文本框赋值并修改它的Left和Top值,使之紧贴着激活单元格的右侧。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    With Sheet1.Shapes.Range(Array("TextBox 1"))
        .TextFrame2.TextRange.Characters.Text = "当前单元格:" + Target.AddressLocal
        .Left = Target.Left + Target.Width
        .Top = Target.Top
    End With
End Sub
dsd999 2018-03-20
  • 打赏
  • 举报
回复
这个需求实现不了,至少是相当复杂。。
舉杯邀明月 2018-03-20
  • 打赏
  • 举报
回复
我还想: 只要我打开编程软件,它就“自动的按我的想法把程序代码写好”呢!!!!! 你这种想法就不正确(也许是对需求的描述不准确)。 Excel的工作表不会触发“鼠标移动”的消息,你真要“移动鼠标”时处理,   那可能只有用一个后台线程不停的获取鼠标指针坐标、计算它在哪个单元格上,再做相应的处理。 相对“正确点”的想法,应该是对“活动单元格”进行处理! 但是: 1. 要“自动添加备注”,不可能一股脑儿的把你“选定”过的单元格都添加备注吧!   总得有个判断,哪列的单元格要添加、哪些列的不添加。 2. 你的“另一个表”,是什么样的数据格式?   “名字”如何去“对应”?“内容”在哪儿?凭什么去“定位、访问”另一个表?   这些都不说清楚,你觉得谁能给你一个有效的解决方法!!!

2,503

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧