VBA:如果另一个单元格= 1,则向其他单元格内容中的单元格添加注释

时间:2014-11-04 13:43:46

标签: excel vba comments

如果cell.offset(,45)= 1,我需要使用cell.offset(,23)的内容向单元格添加注释

这就是我的尝试:

Sub CellToCmt2()

  Dim c As Range
  For Each c In Selection
    If target.Offset(, 45) <> 1 Then Resume Next
    If target.Offset(, 45) = 1 Then
      Application.EnableEvents = False
      On Error Resume Next
      With c.Offset(, 23)
        .NoteText Text:=.Value
      End With
      target.ClearContents
      On Error GoTo 0
    End If
  Next c

End Sub

但由于我对VBA的了解很少,我一直都会遇到错误。

非常感谢任何帮助

修改:这是我的代码

Sub CellToCmt2()
Dim c As Range
For Each c In Selection
If c.Offset(, 45) = 1 Then
    On Error Resume Next
    With c
        c.NoteText Text:=c.Offset(, 23).Value
    End With
    target.ClearContents
    On Error GoTo 0
End If
Next c
End Sub

2 个答案:

答案 0 :(得分:0)

targetc吗?例如:

If c.Offset(, 45) <> 1 Then Resume Next
If c.Offset(, 45) = 1 Then

答案 1 :(得分:0)

首先,这一点什么都不做:

If target.Offset(, 45) <> 1 Then Resume Next

无论条件是否满足,您都可以继续下一步。也可以完全把它拿出来。

另外,当我使用宏录制器输入注释时,我得到代码:

c.Comment.Text Text:="test"

所以也许试试&#34; Comment.Text&#34;而不是&#34; NoteText&#34;

编辑:

您可能想要更改

With c.Offset(, 23)
  .NoteText Text:=.Value
End With

c.NoteText Text:=c.Offset(, 23).Value