Return to VBA Code Examples
This tutorial will demonstrate how to work with Cell comments in VBA.
The following code snippets show you how to add or delete a comment in a cell.
1. Put the following code somewhere in your macro to add a comment.
Sheet1.Range("A1").AddComment ("Hello World")
2. To delete a comment use this code
Sheet1.Range("A1").Comment.Delete
3. To edit a comment in a certain cell you need to read the existing comment and edit it. Use the code below
Dim OldComment As Variant
Dim NewComment As Variant
OldComment = Sheet1.Range("A1").Comment.Text
NewComment = OldComment & " Edited comment"
Sheet1.Range("A1").Comment.Delete
Sheet1.Range("A1").AddComment (NewComment)
First, you need to read the existing comment in OldComment variable.
After that you can edit a comment, e.g. add the new text to the existing one in NewComment variable.
Now, you need to delete the old comment and add the new one. In order to delete the comment, you have to use the .Comment.Delete command.
Finally, you can add the comment from the NewComment variable using the .AddComent command.
VBA Coding Made Easy
Stop searching for VBA code online. Learn more about AutoMacro – A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users!
Learn More!
Excel, just like other Office products, supports comments. Although comments are helpful to add tips or other details into your spreadsheets, deleting them may become time consuming while trying to find and select all of them. In this article, we’re going to show you how to delete all comments in Excel using VBA.
How to delete all comments in Excel
Comments are stored in the comments collection under a worksheet object. This means that we can loop through comments in a worksheet and delete them one by one (automatically of course!).
For Each cmt In ActiveSheet.Comments cmt.Delete Next cmt
To delete the Comments in whole workbook, we need to check every sheet as well.
For Each ws In ActiveWorkbook.Worksheets For Each cmt In ws.Comments cmt.Delete Next cmt Next ws
You can use codes in two ways:
- Module
- Immediate Window
In the Module method, you need to add the module into the workbook or the add-in file. Copy and paste the code into the module to run it. The main advantage of the module method is that it allows saving the code in the file, so that it can be used again later. Furthermore, the subroutines in modules can be used by icons in the menu ribbons or keyboard shortcuts. Remember to save your file in either XLSM or XLAM format to save your VBA code.
The Immediate Window method, on the other hand, is essentially a quick and dirty method where you can simply copy and paste the code into the Immediate Window and press the Enter key to run it. Unfortunately, any code you use in the Immediate Window will not be saved. Also note that icons and keyboard shortcuts will not be available.
Delete Comments in an active sheet
Module method:
Sub DeleteCommentsInActiveWorksheet() Dim cmt As Comment For Each cmt In ActiveSheet.Comments cmt.Delete Next cmt End Sub
Immediate Window method:
For Each cmt In ActiveSheet.Comments: cmt.Delete: Next cmt
Delete Comments in a workbook
Module method:
Sub DeleteCommentsInActiveWorkbook() Dim ws As Worksheet Dim cmt As Comment For Each ws In ActiveWorkbook.Worksheets For Each cmt In ws.Comments cmt.Delete Next cmt Next ws End Sub
Immediate Window method:
For Each ws In ActiveWorkbook.Worksheets: For Each cmt In ws.Comments: cmt.Delete: Next cmt: Next ws
All you really need to do is get a range, then clear comments:
Worksheets("MySheet").Activate
ActiveSheet.UsedRange.ClearComments
Does that help?
More Detail
To get the above code to work, there are several approaches. The one I recommend here is:
- Open your Excel workbook.
- Click the Visual Basic option on the Developer tab. This opens a VBA window with a tree control to the left, which shows the worksheets and workbooks.
- Right-click the worksheet and select Insert Module.
- In the module window that opens, paste the code I show at the bottom of these instructions.
- Save the worksheet as type Excel Macro-Enabled Workbook.
- Close the VBA window.
When back in Excel, hit to bring up the Run Macro window. You should see your RemoveComments macro listed. Now click Run and your comments should be removed.
I actually tested this, so it will work if done properly. If it still doesn’t work for you, be sure that the worksheet in question is the first worksheet in your workbook. If it isn’t, then change Worksheets(1).Activate in your RemoveComments Sub so that it refers to the correct worksheet.
Sub RemoveComments()
Worksheets(1).Activate
ActiveSheet.UsedRange.ClearComments
End Sub
Как удалить все комментарии на листе / книге?
В целом, большинство пользователей знают, как удалить один комментарий в Excel, но если у вас есть рабочий лист или книга с несколькими комментариями, знаете ли вы, как массово удалить все комментарии? Теперь я расскажу вам несколько быстрых способов удалить все комментарии с листа или всей книги.
Удалите все комментарии на листе с помощью Удалить в Excel
Удалите все комментарии на листе с помощью функции Перейти в Excel
Удалить все комментарии на листе или в книге с помощью VBA
Сбросить расположение всех комментариев с помощью Kutools for Excel
Удалите все комментарии на листе с помощью Удалить в Excel
Вы можете использовать ярлык, чтобы выбрать все комментарии на листе, а затем удалить их.
1. Откройте лист, из которого вы хотите удалить все комментарии, и нажмите Ctrl + чтобы выделить весь лист.
2. Затем нажмите Обзор > Удалить, то все комментарии в текущем листе удаляются. Смотрите скриншот:
Удалите все комментарии на листе с помощью функции Перейти в Excel
В Excel, если вы хотите удалить все комментарии на листе, вы можете сделать следующее:
1. Нажмите F5 Показать Перейти к диалоговое окно и щелкните Специальный… , чтобы открыть Перейти к Специальный диалог, затем отметьте Комментарии и нажмите OK чтобы закрыть диалог. Смотрите скриншоты:
2. Затем щелкните правой кнопкой мыши, чтобы открыть контекстное меню, и щелкните Удалить комментарий, и теперь все комментарии в текущем листе удалены.
Удалить все комментарии на листе или в книге с помощью VBA
Существует также VBA, который может помочь вам удалить комментарии с рабочего листа или всей книги.
1. Нажмите Alt + F11 для отображения Microsoft Visual Basic для приложений окно.
2. В окне нажмите Вставить > Модули чтобы отобразить новое окно модуля, затем скопируйте следующий код VBA в окно модуля.
VBA: удаление комментариев с листа.
Sub Remove_All_Comments_From_Worksheet()
Cells.ClearComments
End Sub
VBA: удалить все комментарии из всей книги
Sub DeleteAllComments()
'Updateby20140613
For Each xWs In Application.ActiveWorkbook.Sheets
For Each xComment In xWs.Comments
xComment.Delete
Next
Next
End Sub
3. Нажмите Run кнопку, чтобы запустить код, и вы увидите, что все комментарии удалены из текущего рабочего листа или всей книги.
Сбросить расположение всех комментариев с помощью Kutools for Excel
Если вы вставили несколько комментариев в книгу, и вы, вероятно, можете перетащить комментарии, как показано ниже. И теперь вы хотите сбросить расположение комментариев обратно, вы можете использовать Kutools for ExcelАвтора Сбросить позицию комментария чтобы быстро их сбросить.
После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:
Нажмите Кутулс > Больше > Сбросить позицию комментария. Смотрите скриншот:
Затем выберите Активный лист для сброса позиции комментариев на активном листе, или Все листы чтобы сбросить положение всех комментариев во всей книге.
Сбросить расположение всех комментариев
Относительные статьи:
- Удалить текст перед символом в Excel
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Содержание:
- Добавление комментариев в VBA в Excel
- Преобразование строки кода (или блока кода) в комментарий
- Изменение цвета комментария в Excel VBA
- Некоторые рекомендации при работе с комментариями в VBA
При работе с кодированием VBA в Excel вы можете легко добавлять комментарии во время написания кода.
Комментарии в VBA могут быть действительно полезны для новичков, где вы можете добавить комментарий к строке кода (или блоку кода), объясняющий, что он делает. Так что в следующий раз, когда вы вернетесь к коду, вы не потеряетесь полностью и у вас будет какой-то контекст из-за комментариев.
Даже для продвинутых программистов Excel VBA, как только код начинает выходить за пределы нескольких строк, рекомендуется добавлять контекст с помощью комментариев (особенно если есть вероятность, что кто-то другой, возможно, придется поработать над кодом в будущем)
А поскольку это комментарий, VBA игнорирует его при выполнении кода.
В этом коротком руководстве по Excel я расскажу, как добавлять комментарии в VBA, и расскажу обо всех передовых методах, связанных с этим.
Добавление комментариев в VBA в Excel
Чтобы добавить комментарий в VBA, просто добавьте знак апострофа перед строкой, которую вы хотите пометить как комментарий.
Все, что находится после знака апострофа в этой строке, будет считаться комментарием, и VBA превратит его в зеленый цвет (чтобы визуально отличить его от обычного кода)
Добавить комментарий в VBA можно двумя способами:
- Добавьте комментарий в отдельной строке, где эта строка начинается с апострофа, а после него следует текст комментария.
- Добавьте комментарий как часть обычной строки кода, где после кода у вас есть пробел, за которым следует апостроф, а затем комментарий (как показано ниже)
Хотя я видел, что оба они используются программистами VBA, я предпочитаю первый метод, при котором комментарий имеет отдельную строку.
Другой (старый) метод добавления комментария состоит в том, чтобы за комментарием следовало слово «Рем».
Здесь Рем — сокращение от Remark.
Rem использовался во времена BASIC и сохранился в текущих версиях VBA. Хотя хорошо знать, что он существует, я рекомендую вам использовать только метод апострофа при добавлении комментариев в VBA.
Преобразование строки кода (или блока кода) в комментарий
Иногда вам может потребоваться преобразовать существующую строку кода (или блок кода) в комментарии.
Программисты часто делают это, когда работают над кодом и хотят быстро опробовать что-то еще, сохраняя при этом уже написанный код.
Таким образом, вы можете быстро закомментировать строку, попробовать новую, и, если вы хотите вернуть предыдущий код, просто удалите апостроф и преобразуйте этот комментарий обратно в обычную строку кода.
Для строки (или даже нескольких строк) лучше вручную добавить апостроф перед этими строками.
Но если у вас большой блок кода, используйте следующие шаги, чтобы добавить опцию преобразования всего блока кода в комментарий:
- Перейдите на вкладку «Просмотр».
- Перейдите к опции панели инструментов.
- Когда вы наведете на него курсор, вы увидите больше вариантов.
- Нажмите на опцию Edit. Панель инструментов редактирования появится где-нибудь на экране.
- Перетащите панели инструментов редактирования в область панели инструментов, чтобы они закрепились там (в случае, если они еще не закреплены).
- Выберите блок кода, который вы хотите закомментировать
- Нажмите на опцию «Блок комментариев» на панели инструментов.
Вышеупомянутые шаги мгновенно преобразовали бы блок кода в комментарии, добавив апостроф перед каждой строкой в этом коде.
Если вы хотите удалить комментарий и преобразовать его обратно в обычные строки кода, выберите этот блок кода еще раз и нажмите на опцию «Uncomment block» на панели инструментов Edit.
Изменение цвета комментария в Excel VBA
Хотя VB не допускает большого форматирования, он позволяет при желании изменить цвет комментария.
Один из моих студентов курса VBA написал мне по электронной почте и сказал, что возможность изменять цвет комментариев в VBA действительно полезна для людей, страдающих дальтонизмом.
Ниже приведены шаги по изменению цвета комментария в Excel VBA:
- Откройте редактор Visual Basic
- Выберите в меню пункт Инструменты.
- Нажмите на Параметры
- В диалоговом окне «Параметры» перейдите на вкладку «Формат редактора».
- В параметрах цветов кода выберите Текст комментария.
- Измените цвет переднего плана и / или фона
- Закройте диалоговое окно
Когда вы меняете цвет комментария, он также изменяет цвет для всех существующих комментариев в вашем коде.
Некоторые рекомендации при работе с комментариями в VBA
Вот несколько рекомендаций, которые следует учитывать при использовании комментариев в коде VBA.
- Сделайте комментарий содержательным и добавьте контекст. Добавляя комментарий, подумайте, что было бы полезно для нового пользователя, который никогда не видел этот код и пытается разобраться в нем.
- Избегайте чрезмерного комментирования, так как это может сделать ваш код немного загроможденным. Если вы новичок, то можете добавлять больше комментариев, но по мере того, как вы набираетесь опыта в кодировании VBA, вам все равно не нужно будет добавлять много комментариев.
- Для каждой новой подпрограммы или функции рекомендуется добавлять комментарий, объясняющий, что они делают.
- При работе со сложным кодом рекомендуется добавлять комментарии перед условиями и циклами, чтобы вам было легче понять, что вы сделали, когда вы повторно просматриваете код (или когда кто-то другой просматривает код)
В этом уроке я рассказал, как можно добавить комментарии в VBA и некоторые рекомендации по его использованию.
Надеюсь, вы нашли этот урок полезным.