使用VBA将注释添加到单元格

有没有办法通过hover在一个单元格上激活评论? 我有一个单元格的范围,我想从另一个工作表中悬挂相应的评论时,hover在每个单独的单元格。 hover事件将从其他工作表中各个单元格的注释中提取出来。

注释是string值。 基本上,我在Sheet 1中有一系列的单元格,比如A1:A5,当我将鼠标hover在它们上面并从Sheet 2范围B1:B5拉出时,我需要popup注释。 我之所以不手动这样做,是因为Sheet 2的内容每天都在变化。 这就是为什么我试图看看是否有VBA解决scheme。

hover在任何包含注释的单元格上,都会显示该单元格的评论

这是如何给单元格添加评论以及如何更新评论文本

 Sub aaa() With Range("E6") If Not .Comment Is Nothing Then .Comment.Delete .AddComment "this is a comment" .Comment.Text = "abc123" End With End Sub 

每次打开工作簿时,此代码将刷新注释的内容。 它基于目的地和来源的范围。 确保首先为单元格范围添加注释。 你不需要VBA。

 Private Sub Workbook_Open() Dim ws As Worksheet Dim rg As Range Dim comment As String Dim i As Integer i = 1 Set rg = Range("E1:E10") 'set range of where the comments will be seen Set ws = Sheets("Sheet1") For Each c In rg comment = ws.Cells(i, 2).Value 'set location of comments you are grabbing from c.comment.Text Text:=comment i = i + 1 Next c End Sub 

试试这个代码。

 Sub test() Dim rngDB As Range, rngComent As Range Dim rng As Range Dim cm As Comment, i as integer Set rngComent = Sheets(1).Range("a1:a5") Set rngDB = Sheets(2).Range("b1:b5") For Each rng In rngComent i = i + 1 If Not rng.Comment Is Nothing Then rng.Comment.Delete End If Set cm = rng.AddComment With cm .Visible = False .Text Text:=rngDB(i).Value End With Next rng End Sub