Удаление всех имен, кроме нескольких (Microsoft Excel)
Вы обычно работаете с листами, которые содержат десятки (или сотни)
именованных ячеек, и большинство из этих имен не нужны? Очистить имена — огромная задача, но избавление от ненужных может сделать вашу книгу меньше и эффективнее. Проблема в том, как избавиться сразу от множества ненужных имен? Вы, конечно, можете удалять их по одному, но такой процесс быстро утомляет.
Одно из возможных решений — просто создать новую книгу и скопировать ячейки из старой книги в новую. Выделите ячейки в старой книге, используйте Ctrl + C, чтобы скопировать их, затем вставьте их на листы в новой книге. Это скопирует почти все из старой книги — формулы, форматирование и т. Д. Это не приведет к копированию настроек печати или имен диапазонов. Единственная оставшаяся задача — это переопределить несколько имен, которые вы хотите использовать в новой книге.
Если вы предпочитаете работать со старой книгой (той, которая содержит все имена), лучше всего создать макрос, который выполнит удаление имени за вас. Вам нужен макрос, который позволит вам удалить все имена, кроме тех, которые вы хотите сохранить. Следующее — простой подход, который выполняет эту задачу:
Sub DeleteSomeNames() Dim vKeep Dim nm As Name Dim x As Integer Dim AWF As WorksheetFunction 'Add Names to keep here vKeep = Array("Name1", "Name2") Set AWF = Application.WorksheetFunction For Each nm In ActiveWorkbook.Names x = 0 On Error Resume Next x = AWF.Match(nm.Name, vKeep, 0) On Error GoTo 0 If x = 0 Then nm.Delete End If Next Set AWF = Nothing End Sub
Перед использованием макроса измените строку, в которой создается массив vKeep.
Просто введите имена, которые вы хотите сохранить в массиве, каждое имя в кавычках и разделенных запятыми. (В показанном здесь примере имена «Name1» и «Name2» будут сохранены.) Макрос перебирает все имена в книге и использует функцию Match, чтобы проверить, является ли имя одним в массиве. В противном случае он удаляется.
Если вы предпочитаете использовать стороннее решение для управления именами в своей книге, отличным выбором является надстройка Name Manager, написанная Яном Карелом Питерсом. Вы можете найти более подробную информацию о надстройке здесь:
http://www.jkp-ads.com/officemarketplacenm-en.asp
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (2419) относится к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:
link: / excelribbon-Deleting_All_Names_but_a_Few [Удаление всех имен, кроме нескольких]
.