如果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
答案 0 :(得分:0)
target
应c
吗?例如:
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