Grant는 워크 시트에 누군가가 셀에 입력을 시작하면 입력 한 내용이 셀에 첨부 된 주석으로 끝나기를 원하는 셀이 있습니다. 셀 자체는 비어 있어야하지만 주석에는 입력 한 내용이 포함되어야합니다.

이 작업을 수행하는 유일한 방법은 매크로를 사용하는 것입니다.

Excel의 이벤트 처리기 기능을 사용하면 셀이 변경 될 때마다 트리거되는 매크로를 만들 수 있습니다. 변경된 셀이 주석을 연결하려는 셀인 경우 셀 내용을 주석으로 전송하고 셀 자체에서 제거 할 수 있습니다. 다음의 짧은 매크로가이를 수행합니다.

Private Sub Worksheet_Change(ByVal Target As Range)

Dim rCell As Range     Dim sTemp As String

Set rCell = Range("B4")

If Not Intersect(Target, rCell) Is Nothing Then         sTemp = rCell.Value         rCell.ClearComments         If Len(sTemp) > 0 Then             Application.EnableEvents = False             On Error Resume Next             rCell.AddComment             rCell.Comment.Text Text:=sTemp             On Error GoTo 0             rCell.ClearContents             Application.EnableEvents = True         End If     End If End Sub

이것은 이벤트 처리기이므로 영향을받을 워크 시트의 코드 모듈에 추가해야합니다. 이 경우 주석으로 이동 코드는 B4 셀에서 변경된 경우에만 트리거됩니다. 이 주소는 원하는 경우 코드에서 변경할 수 있습니다.

이 매크로는 사용자가 셀 B4에 입력을 완료 한 후에 만 ​​트리거된다는 점에 유의해야합니다. 사용자가 입력을 시작할 때 트리거되지 않습니다. 따라서 실제 데이터 입력은 여전히 ​​주석 자체가 아닌 셀 B4에서 발생합니다. 또한 누군가가 셀 B4에 무언가를 입력하면 매크로가 셀 내용을 주석으로 이동하기 전에이를 삭제하기 때문에 기존 주석이 손실됩니다.

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (13511)은 Microsoft Excel 2007, 2010, 2013 및 2016에 적용됩니다.