首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Excel vba--添加新注释并将焦点置于该注释的宏

Excel vba--添加新注释并将焦点置于该注释的宏
EN

Stack Overflow用户
提问于 2018-08-31 06:12:50
回答 1查看 832关注 0票数 0

我想用宏来模拟默认的插入注释按钮的行为。我希望将所有宏存储在个人工作簿中,而不是活动工作簿中。我希望它只是创建一个评论,然后将焦点设置到那个空评论上。下面是我到目前为止所做的,使用Terry的建议来制作评论.Visible,然后对其进行.Shape.Select

    Sub addNewComment()
    Dim authorName As String
    Dim authorNameLength As Integer

    authorName = Application.UserName
    authorNameLength = Len(authorName)

    ActiveCell.AddComment _
    authorName & ":" _
    & Chr(10)
            With ActiveCell.Comment
                With .Shape
                    .AutoShapeType = msoShapeFoldedCorner
                    .Fill.ForeColor.RGB = RGB(215, 224, 239)
                    With .TextFrame
                        .AutoSize = True
                        .Characters.Font.Size = 11
                        .Characters.Font.Name = "Calibri"
                        .Characters(1, (authorNameLength + 1)).Font.Bold = True
                        .Characters((authorNameLength + 2), 1).Font.Bold = False
                    End With
                End With
                .Visible = True
                .Shape.Select True
            End With
End Sub

我不知道如何让评论回到不可见的状态。是否存储对刚添加注释的单元格的引用,然后使用Worksheet_SelectionChange事件引用该单元格?或者使该事件仅隐藏工作表上的所有注释?是否可以在个人工作簿中使用Worksheet_SelectionChange?此外,我的注释框不会在我键入和添加换行符时调整大小。它确实在我退出后调整了大小,但实际上太大了大约四行。不确定为什么会发生这种情况。我相信也有一种更干净的方法来组织我的With块。

在选择另一个单元格后,我尝试使用以下命令再次隐藏注释:

 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Target.Comment.Visible = False
End Sub

我收到以下错误:

error 91: Object variable or With block variable not set

EN

回答 1

Stack Overflow用户

发布于 2018-08-31 09:55:55

使注释可见后,可以使用以下方法选择该注释:

With range("a1")
    .Comment.Visible = True
    .Comment.Shape.Select True
End With

但我认为,一旦取消选择,您将需要另一个宏来再次隐藏注释,否则它将保持可见。您可以尝试在工作表的SelectionChange事件上执行此操作:

 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Target.Comment.Visible = False
End Sub
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52106039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档