Редактирование комментария рядом с его ячейкой (Microsoft Excel)
У Пегги есть несколько ячеек на листе, с которыми связаны комментарии. Когда она щелкает правой кнопкой мыши по одной из этих ячеек, она может выбрать «Изменить комментарий» в появившемся контекстном меню, чтобы отредактировать комментарий. Если это был комментарий, который она создала в предыдущем сеансе работы с Excel, вполне нормально, что комментарий открывается в другом месте на листе, иногда на расстоянии нескольких экранов. Пегги интересуется, есть ли способ сделать так, чтобы комментарий появлялся рядом с ячейкой, к которой он идет.
Это состояние может быть вызвано несколькими причинами. Например, возможно, что при предыдущем редактировании комментария вы щелкнули границу поля комментария и перетащили комментарий в другое место на листе. Если вы это сделали, Excel запоминает, куда был перемещен комментарий, и всегда отображает его в запомненном месте.
Другая распространенная причина заключается в том, что вы выполняете некоторую фильтрацию своих данных, в результате чего некоторые строки или столбцы скрываются, пока фильтр установлен. Если вы затем отредактируете комментарии в отфильтрованных ячейках, вы фактически «переместите» комментарий из исходного местоположения в новое местоположение, связанное со строкой или столбцом, видимым на экране. Когда вы позже удалите фильтр и попытаетесь отредактировать комментарий, он запоминает, где он был ранее отредактирован, и именно здесь появляется новая возможность редактирования.
В обоих случаях нормальное решение — просто улыбнуться и терпеть — вручную переместить ячейки с того места, где они находятся, туда, где вы хотите.
Однако, если у вас есть эта проблема с большим количеством ячеек, любое ручное перемещение может стать настоящей проблемой. В этом случае вы можете использовать макрос, который сделает перемещение за вас.
Sub MoveComments1() Dim cmt As Comment For Each cmt In ActiveSheet.Comments With cmt .Shape.Top = .Parent.Top .Shape.Left = .Parent.Offset(0, 1).Left End With Next cmt End Sub
Этот макрос перемещает все комментарии на листе так, чтобы их левый верхний угол совпадал с правым верхним углом ячейки, к которой они прикреплены. Это помещает комментарии прямо рядом с их ячейками, где вы хотите их.
Если вы хотите настроить все комментарии во всей книге, а также «автоматически изменить размер» каждого поля комментариев, вы можете использовать этот вариант макроса:
Sub MoveComments2() Dim wbk As Workbook Dim wks As Worksheet Dim cmt As Comment Dim rngC As Range Dim lArea As Long Set wbk = ActiveWorkbook On Error Resume Next For Each wks In wbk.Worksheets For Each cmt In wks.Comments With cmt .Shape.TextFrame.AutoSize = True If .Shape.Width > 200 Then lArea = .Shape.Width .Shape.Height .Shape.Width = 200 .Shape.Height = (lArea / 200) 1.1 End If .Shape.Top = .Parent.Top .Shape.Left = .Parent.Offset(0, 1).Left End With Next cmt Next wks End Sub
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (9703) применим к Microsoft Excel 2007, 2010 и 2013. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:
link: / excel-Editing_a_Comment_Close_to_Its_Cell [Редактирование комментария рядом с его ячейкой]
.