Разрыв связи с внешним ресурсом в Excel
- На вкладке Данные в группе Подключения нажмите кнопку Изменить связи.
Примечание: Отсутствие команды Изменить связи означает, что файл не содержит связанных данных.
- Чтобы выбрать несколько связанных объектов, щелкните каждый из них, удерживая нажатой клавишу CTRL.
- Чтобы выделить все связи, нажмите клавиши CTRL+A.
Удаление имени определенной ссылки
Если для ссылки использовался определенный имя, имя не удаляется автоматически. Чтобы удалить имя, с помощью следующих действий:
- На вкладке Формулы в группе Определенные имена нажмите кнопку Диспетчер имен.
- В диалоговом окне Диспетчер имен щелкните имя, которое нужно изменить.
- Щелкните имя, чтобы выделить его.
- Нажмите кнопку Удалить.
- Нажмите кнопку ОК.
Дополнительные сведения
Вы всегда можете задать вопрос эксперту в Excel Tech Community или получить поддержку в сообществах.
Как обновить 100 Excel файлов, чтобы не отсохли руки и пару слов о немецкой диджитализации
Всем привет! На связи Максим и я продолжаю описывать свой университетский опыт работы VBA программистом с Excel. В сегодняшней статье поговорим о том, как можно произвести изменения в десятках, сотнях, миллионах Excel файлов за один заход с помощью одного макроса и как этот концепт может сэкономить вам кучу времени, сил и средств. Данная статья будет полезна тем, кто вынужден часто совершать одинаковые изменения в большом количестве подобных друг другу Excel файлах, тем, кто устал от рутины и хочет автоматизировать процесс обновления рабочих документов или молодым студентам, которые находятся в поисках идей того, как можно выделится своими скиллами на рабочем месте. Бонусом внутри вы найдете пару моих рассуждений на тему дискуссий, которые возникли под моей прошлой статьей (если еще не читали ее, то советую ознакомиться, чтобы лучше понимать фон этой), а именно на тему актуальности Excel и VBA в европейских реалиях и общего уровня диджитализации на немецком рынке. Погнали!
Первым делом я бы хотел украсть минутку вашего времени, чтобы поблагодарить вас всех за активность на моей первой статье. Всего за 2 недели статья набрала 41 тысячу просмотров и стала, если я ничего не упустил, самой просматриваемой статьей на тему VBA на сайте! Это просто фантастика! Стоит признаться, что статья была написана часа за полтора в сонное и ленивое послеобеденное время жаркого летнего дня с целью поделиться с той кучкой людей, которые все-таки откопает ее в песочнице, своим небольшим опытом, а может даже помочь подзаработать копеечку, подкинув интересную на мой взгляд идею заработка. Но под статьей началась очень активная и интересная дискуссия, которая не прекращалась несколько дней. Я перечитал все комменты и был очень рад увидеть, что некоторые люди действительно заинтересовались темой и просили детальнее описать мой опыт программирования на VBA. Как я и обещал, я подготовлю небольшую серию статей, каждая из которых опишет реальные кейсы, с которыми я работал. Я постараюсь как можно проще и понятнее описать, какие практики реально полезные, а какие стоит избегать всеми возможными путями. Не буду больше тянуть, всем еще раз спасибо, теперь точно погнали!
Итак, первая профильная статья должна быть о чем-то, что сыграло в моей короткой карьере весомую роль. Поэтому я решил описать свой первый самостоятельный рабочий проект, успешное закрытие которого принесло мне продление рабочего контракта и изменило мою репутацию внутри отдела с «Какой-то малолетка, приходящий 2 раза в неделю и делающий все, что нам лень» на «Какой-то малолетка, приходящий 2 раза в неделю и делающий все, что нам лень, умеющий делать макросы». В первой статье, я вскользь описал свой отдел, а именно то, что из-за длинной очереди на автоматизацию с помощью стороннего софта, он был вынужден заниматься ею самостоятельно с помощью End-User Computing, облегчая себе жизнь Excel макросами на VBA.
Хочу оспорить мнение некоторых людей из комментариев под прошлым постом, кто говорит, что Excel уже прошлый век и нигде используется, а моя фирма это просто исключение. Ребята, я не зря много раз подчеркивал, что речь идет о рынке, вероятно, самой консервативной страны Европы – Германии. Чтобы коротко описать состояние местного рынка я расскажу вам короткую, но забавную историю. Я недавно проходил собеседование на должность практиканта в одну из крупнейших страховых фирм страны, а точнее в их дочернюю компанию занимающейся диджитализацией страховой и IT задачами в целом. Незадолго до собеседования мне пришел E-Mail от отдела кадров с общей информацией о предстоящем разговоре и рекомендацией о том, что неплохо было бы получше ознакомиться с самой фирмой на их сайте. Я открыл отправленную ими ссылку и предо мной открылась новостная лента этой компании. В закрепе висела статья с топовым названием: «Мы уходим от использования факса!» и фотография главы страховой с очень-очень довольным лицом. Извините, но я в свои 22 года не знаю даже как факсом пользоваться. А он оказывается до сих пор активно используется в немецких страховых фирмах… Факс — это вообще тема тут популярная, что вызывает у меня дикий восторг и истеричный смех. Особенно когда идешь с лекции на тему диджитализации, заходишь в приемную к врачу, а тебе там предлагают отправить твою справку о больничном напрямую работодателю по факсу и спрашивают номер. E-mail пока не освоили. Сразу воодушевляешься и начинаешь представлять как когда вырастешь и станешь взрослым, будешь проводить свои лучшие годы избавляя компании от использования факса в 20’х годах 21 века. Во время самого собеседования разговор, кстати, тоже прошел в интересном ключе. Глава IT отдела резко остановил меня после того, как я сказал, что заинтересован в 4-5 месячном практикуме и сказал, что ему нужен практикант минимум на 2-3 года, так как первые полтора уйдут на ознакомление с ландшафтом всех используемых систем, общее количество которых достигло 250. Ну накопилось за 30 лет, с кем не бывает.
Это я не о том, что тут люди копьями себе еду добывают и шкуры животных носят, я лишь о том, что современные технологии в местных фирмах внедряются очень и очень медленно, поэтому Excel это реально рабочая машинка номер 1 для абсолютного большинства как маленьких, так и больших компаний. Этому виной много факторов: очень жесткое и консервативное законодательство, требующее максимальную безопасность данных, банальное нежелание менять то, что десятилетиями работает и так далее и тому подобное. В государственных учреждениях, если я не ошибаюсь, чисто с юридической стороны вопроса разрешено использовать только офисный пакет от Microsoft, даже переход на версию 365 предвидеться лишь в обозримом будущем. В долгосрочной же перспективе все государственные фирмы планируют пересадить на офисный пакет от местного производителя (который еще пока не разработан), чтобы убрать зависимость от американского софта. Короче вы поняли. Все достаточно плохо. Рукастые ребята, которые хотят и могут сделать по-модному и современному часто сталкиваются с нежеланием и страхом руководства что-то менять. У меня не получилось уговорить даже бесплатную версию Asana внедрить в отдел, а вы говорите про современные облачные решения для работы с данными. Лет через 15 может, торопиться некуда, Excel не подведет.
Но я что-то отошел от темы. Итак, мой первый проект после прихода на должность VBAшника. Этот кейс является хорошим примером корректного использования VBA внутри отдела. Успешная его реализация сэкономила нам много человеко-часов и нервов, плюс дала важный опыт в автоматизации процесса обновления документов внутри отдела.
Важнейшим компонентом нашего отдела является калькуляция. Не углубляясь в бэкграунд, стоит просто сказать, что мой отдел занимается контролем состояния проектов, которых в лучшие времена было около сотни одновременно. Средняя длительность проекта от 5 до 8 лет. По его началу для него создается калькуляция. Она построена на базе единого шаблона, который часто обновляется, и ведется на протяжении всего проекта, вплоть до его окончания. То есть при создании проекта наиболее актуальной версией шаблона может быть, скажем, v. 1.2, а в момент окончания проекта стандартом будет уже v. 1.8. Обновления происходят примерно раз в полгода.
Интересный момент наступает в момент перехода к новому шаблону. Так, новые проекты, которые создаться после внедрения новой версии шаблона будут созданы уже на базе самой актуальной версии. А вот что делать с теми калькуляциями, которые были созданы ранее? Вариант с созданием их заново на базе наиболее актуальной версии шаблона сразу отпадает, так как каждая калькуляция чуть-чуть да индивидуальна и за время проекта обрастает своими дополнительными вспомогательными листами, комментариями и т.д. Было бы глупо заставлять работников отдела каждые полгода начинать вести все их калькуляции заново. Вариант с ручным обновлением кажется уже более реальным решением. Скажем, обновление включает в себя всего 10 мелочей, цвет фона поменять, да формулу обновить. Ну сколько тогда понадобиться времени на обновление? Минут так 10. 10 минут умножить на 100 файлов, получается 1000 минут или 16 с половиной часов, часов 18 вместе с перерывами на кофе. После увеличения минимальной почасовой заработной платы, а она в Германии особо важна для студентов, так как их труд оплачиваться почасово, средняя зарплата студента ITшника будет порядка 15-17 евро в час. То есть процесс обновления 100 файлов будет стоить фирме: 18 часов работы студента умножить на его зарплату в 15 евро в час – 270 евро. Студент на эти деньги сможет целый месяц очень хорошо питаться, а фирма этой затраты в принципе даже не почувствует.
Но что делать, если обновление большое? Скажем, в моем первом проекте в калькуляцию было привнесено около 120 новых изменений. Начиная от замены старых формул на новые и заканчивая полными изменением форматирования целых листов. Давайте повторно рассмотрим все варианты. Вариант с тем, чтобы просто пересоздать все старые калькуляции на базе нового шаблона до сих пор отпадает, работники не желают этим заниматься, а для студента, не имеющего профильные знания в этой среде, задача тяжелая. Обновление вручную? Давайте посчитаем. Возьмем за стандарт, как и в первом примере, что 1 изменение занимает 1 минуту. 120 обновлений в файле – примерно 2 часа на обновление одного документа. Обновление ста документов займет 200 часов, или при средней студенческой выработке в 16 часов в неделю – чуть более 3 месяцев. За эти 3 месяца фантастически увлекательной работы студент получит 3000 евро, это уже более болезненно для фирмы. Учитывайте дополнительно еще то, что студент реально будет 3 месяца просто обновлять калькуляции, в других сферах от него толку не будет. Для других задач нужно либо нанимать другого студента, либо все остальные поручения перекладывать на штатных сотрудников. Плюсом еще и то, что у студентов далеко не всегда все идет гладко и процесс может затянуться еще на пару недель. К тому времени подъедет и новое обновление, а должность студента можно будет официально переименовывать в «специалист по обновлению калькуляций», так как он рискует больше ничем особо и не заниматься. Знаете, что самое ужасное? Они реально так делали… Один из моих предшественников попал на более мелкий апдейт и месяца полтора провел за этим увлекательным занятием.
Какая общая логика процесса? Вместе с каждым обновлением калькуляции я получаю полный и четкий список требуемых обновлений. Например: Лист «ABC», ячейка «A1», новая формула «=СУММ(B1:B3)». То есть я могу быть уверенным, что какую бы калькуляцию я не открыл, там гарантировано будет лист ABC и именно в этом листе в ячейке A1 требуется произвести необходимое обновление. Изменения могут быть разные, какие-то проще, какие-то сложнее. Но стоит признать, что как правило в подобного рода обновлениях речь идет о базовых изменениях по типу замены формул, текста, оформления и строения таблиц. Реже речь заходит о более сложных вещах: обновление условного форматирования, работа с графиками и сводными таблицами.
Открывать файл за файлом и делать все вручную дико скучно, долго и не очень удобно. Плюс есть достаточно большой риск накосячить и даже того не заметив сделать какое-то из 120 изменений неправильно.
Нет, ну я же не зря в универе учу как избавлять людей от факсов, нужно альтернативное решение. И оно достаточно интересное. Файлы Excel можно очень удобно обновлять с помощью других файлов Excel. Хотя правильнее было бы сказать, с помощью макроса для обновления, который будет лежать в другом файле Excel. То есть можно создать своего рода файл-обновитель, внутри которого прописать полный алгоритм для совершения необходимых изменений в выбранном файле, а после использовать этот обновитель для обновления других Excel файлов. Пока не очень понятно? Сейчас поясню подробнее!
Я и далее буду использовать только что мной выдуманное слово «обновитель», так как оно мне понравилось. Общий сценарий использования макроса выглядит следующим образом:
- Пользователь открывает Excel файл обновитель.
- Обновитель спрашивает пользователя о том, какие именно файлы он хотел бы обновить.
- Обновитель открывает файл и совершает в нем требуемые изменения.
- Обновитель сохраняет измененный файл, закрывает его и переходит к следующему файлу.
- После успешного обновления всех файлов обновитель отчитывается пользователю, что процесс обновления выбранных файлов завершен.
- Пользователь закрывает обновитель и продолжает работу с обновленными файлами.
Вот и вся идея. Не так уж и сложно, да? Тогда посмотрим, как это выглядит в VBA. Для простоты давайте представим, что нам нужно обновить всего 1 файл и мы заранее знаем путь, где он лежит.
Сначала создаем наш файл обновитель, где будет прописан алгоритм обновления для файлов. Создаем новый VBA модуль и начинаем творить. Для начала создадим пару важных переменных:
Dim sourceFile As Workbook: Set sourceFile = ThisWorkbook ‘Создаем переменную, которая будет содержать в себе наш обновитель Dim fileToUpdate As Workbook: Set fileToUpdate = Workbooks.Open("C:\VBA\File To Update.xlsm") ‘Переменная с файлом, который необходимо обновить
Как мы ранее договорились, для простоты и ясности кода представим, что мы знаем четкий путь к файлу, который нужно обновить и он у нас всего один. На практике такое конечно оооооочень нереалистично. Напомню, нашей целью является обновить 100 документов и желательно за 1 заход! Прикрутив на этом этапе цикл можно избавить пользователя от того, чтобы он каждый раз должен был выбирать файл вручную. Сделать можно, например, так: пользователь добавляет все файлы, которые необходимо обновить, в заранее установленную папку, макрос обновителя открывает эту папку и итерируя через все файлы внутри папки обновляет их, пока не достигнет последнего файла. Способов работы с файлами множество, каждый выбирает тот, который ему по душе, я не буду приводить тут пример кода, который мы использовали в отделе. По своему опыту могу сказать, что вышеописанный вариант, использующий цикл и папку с файлами нами был отмечен как самый удобный и практичный. Сделать такой цикл не сложно и с помощью гугла процесс реализации этого функционала займет минут 30.
Дальнейшая работа будет происходить с переменной fileToUpdate, так как она представляет собой файл, который требуется обновить и через нее можно получить доступ к любой его части. Сам процесс обновления документа достаточно прост. VBA обладает огромным набором инструментов для удобной работы с элементами внутри документа. Я приведу пару простых примеров ниже, чтобы вы поняли саму суть, а дальше каждый уже сам сможет быстро и просто смастерить то, что нужно именно ему. Я скажу вам так, не было за 2 года моей практики такого обновления, которого я не смог бы автоматизировать. Что-то отнимает больше времени, что-то меньше, но все реально.
С самого начала важно активировать файл и лист, в котором необходимо провести обновление. Это проще всего сделать при помощи метода Activate. Активируем наш обновляемый файл и после этого активируем в нем лист, который требуется обновить:
fileToUpdate.Activate fileToUpdate.Sheets(“Old_Sheet”).Activate
Вот мы и готовы обновлять выбранный лист! Нужно изменить формулу в ячейке? Без проблем, но есть важное замечание! Формулы в VBA задаются в совершенно другом формате. Чтобы перевести формулу из привычного Excel формата в синтаксис VBA можно воспользоваться функцией записи макроса. Например, в обновляемом файле вам нужно в ячейку A1 вставить формулу “СУММ(B1:B10)”. В любом Excel файле, включите запись макроса, активируйте ячейку A1 и напишите необходимую вам формулу. После этого остановите запись и откройте среду разработки. В автоматически созданном новом модуле вы увидите интерпретацию этой формулы на языке VBA, а именно:
Range("A1").Select ActiveCell.FormulaR1C1 = "=SUM(RC[1]:R[9]C[1])"
Видите, как сильно отличается формат написания формулы? И это еще совсем простенький пример. Иногда нужно подставлять формулы длинной в 1-2 строки, такие никак кроме как через запись макроса в синтаксис VBA не переведешь.
А вот текст в ячейке проще всего изменить с помощью метода Value, давайте добавим какой-нибудь текст в ячейку A2:
Range("A2").Value = "New Text"
Нужно полностью удалить все в заданном диапазоне?
Sheets(“Old_Sheet”).Range("B1:B100").ClearContents ‘Удаление значений Sheets(“Old_Sheet”).Range("B1:B100").ClearFormats ‘Удаление форматирования
Либо можно сразу ударить абсолютно все с заданного листа:
Sheets(“Old_Sheet”).Cells.ClearContents
Давайте еще добавим новый лист в конец книги и активируем его, чтобы соврешать в нем изменения:
Sheets.Add(After:=Sheets(Sheets.Count)).Name = "New_Sheet" Sheets("New_Sheet ").Select
Сделаем так, чтобы в новом листе колонка C по умолчанию была в денежном формате:
Worksheets("New_Sheet ").Columns("C:C").Select Selection.NumberFormat = "#,##0.00 $"
Закончим подготовку нашего нового листа тем, что сделаем все будущие надписи в первой строке по умолчанию жирными:
Worksheets("New_Sheet").Rows(1).Font.Bold = True
В конце защитим его от нежелательных гостей паролем и скроем его от лишних глаз:
ActiveSheet.Protect ("Password") Sheets("New_Sheet").Visible = False
Разберем также несколько более сложных примеров, например настройку сводных таблиц. Давайте удалим из заданной сводной таблицы с названием dataPivot все настройки строк. Для этого в начале создадим переменную, которой присвоим значение таблицы, настройки которой нужно изменить. После этого с помощью цикла пройдем через все настройки строк таблицы и уберем их:
Dim dataPivot As PivotTable : Set dataPivot = Pivot.PivotTables ( "dataPivot" ) For Each row In dataPivot.RowFields row.Orientation = xlHidden Next row
А теперь добавим новую строку в ту же самую сводную таблицу, которая будет представлять данные из параметра newRow:
dataPivot.PivotFields("newRow").Orientation = xlRowField
А теперь обновим все формулы в документе, чтобы быть уверенными что при следующем открытии файла пользователь увидит уже обновленные значения новых формул:
ActiveWorkbook.RefreshAll
Можно также добавлять новые элементы на страницы, например кнопки:
Sheets("New_Sheet ").Buttons.Add(10,10, 110, 37.5).Select ‘Добавляем кнопку по заданным координатам в заданный лист Selection.OnAction = "bestMakro" ‘При нажатии на кнопку будет запущен макрос с названием bestMakro Selection.Characters.Text = "Add a new row" ‘Надпись на кнопке With Selection.Characters(Start:=1, Length:=9).Font ‘Установка дизайна кнопки .Name = "Arial" .FontStyle = "Standard" .Size = 10 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .ColorIndex = xlAutomatic End With
Такие операции тоже гораздо удобнее проводить с помощью записи макроса. Просто ставите запись, создаете необходимую кнопку, останавливаете запись и получаете на выходе готовый код.
После завершения обновления файла его останется лишь сохранить под новым названием и закрыть. Параметр False в методе Close отменяет сохранение файла перед закрытием, таким образом изначальная версия не будет изменена, а версия со всеми изменения будет носить новое имя и сохранена там, где мы укажем.
fileToUpdate.SaveAs "C:\VBA\Updated File.xlsm" fileToUpdate.Close false
Я надеюсь, то маленькое количество примеров, которое я описал дало вам общее понимание того, как работает процесс обновление файлов. Сделать можно почти все что угодно, одним из главных плюсов VBA несомненно является наличие огромного количества старых добрых форумов и сайтов с туториалами, где можно найти код на все случаи жизни.
Могу сказать, что на написание макроса для обновления всех необходимых документов у меня ушло порядка 8 рабочих дней. Тоже немало, но тогда я еще только учился. Получается, что интеграция более чем 120 обновлений в сотню файлов заняла у студента около 64 часов и стоила фирме 960 евро. Поприятнее будет, чем 3000 евро за ручное обновление.
Разберем кратко главные плюсы такого способа обновления файлов.
Во-первых, — это скорость. Обновления, как правило, аналогичны друг другу, что открывает возможность использовать прекрасный и неповторимый Copy-Paste. Одна и та же функция для изменения формулы:
Range("A1").Select ActiveCell.FormulaR1C1 = "=SUM(RC[1]:R[9]C[1])"
Используется множество раз, меняется лишь значение формулы и ячейка. Можно вынести это в отдельную функцию и быстро и красиво вызывать столько раз, сколько нужно по ходу обновления. Таким образом можно здорово ускорить реализацию рутинных шагов и большая часть времени тогда уйдет на всякие специфичные операции, типа вышеприведенного обновления сводной таблицы.
Во-вторых, гарантия того, что все файлы будут правильно и корректно обновлены. Ручное обновление – опасный процесс, в котором велика вероятность человеческой ошибки. Очень уж легко промахнуться и добавить новую формулу в неправильную ячейку или случайно присвоить новому условному форматированию неправильную настройку. Особенно когда обновление включает в себя большое количество шагов. Хорошо протестированный код обновления исключает человеческий фактор и гарантирует, что все файлы после обновления будут в одинаковом состоянии.
В-третьих, один раз качественно создав шаблон для обновления файлов его можно использовать повторно и для других документов. Данный способ показал свою эффективность и периодически используется в разных обновлениях внутри отдела, экономя нам много времени и сил. Ведь типичные действия при обновлениях, по сути, всегда одни и те же, просто под разным соусом.
Что касается минусов, то тут разве что стоит отметить достаточно долгое время выполнения макроса. Операции открытия и закрытия с сохранением тяжелых файлов достаточно ресурсоемкие и поэтому на слабеньких офисных компьютерах могут длиться достаточно долго. О том, как можно сильно ускорить выполнение макросов мы поговорим в следующей статье!
Будьте креативными! Этот способ обновления позволяет жонглировать данными внутри файлов как вам только захочется! Единственные границы – здравый смысл и ваше воображение. Я очень надеюсь, что эта статья сможет облегчить кому-нибудь жизнь так же, как в свое время эти идеи облегчили мою. Буду рад пообщаться с вами в комментах, пишите было ли интересно и информативно, а также о том, что еще вы бы хотели прочитать на тему Excel. Всем спасибо за внимание и до скорого!
- visual basic for applications
- автоматизация
- диджитализация
- обновление
- excel
- vba-макросы
- макрос
- офисные приложения
Excel works!

Как правильно и быстро очистить ячейки в Excel?
Февраль 20, 2018 / Написал Izotov / No Comments
Столкнувшись снова с тем, что люди тратят много времени на очистку ячеек, поймал себя на мысли, что действий по очистке данных, ячеек, таблиц довольно много. Как очистить все данные на листе? Как удалить только форматы? Как убрать формулы? Или может быть вам нужно очистить данные по условию? Действительно, возможностей много. Думаю, стоит подробно описать большинство способов. Как правильно и быстро очистить ячейки в Excel?
На самом деле, я бы разделил вопрос статьи на 3 части
- Как очистить форматы ячеек?
- Как очистить данные в ячейках Excel?
- Очистка/удаление прочих объектов, таких как диаграммы, автофигуры или сводные таблицы
Как быстро очистить ячейки в Excel от форматов?
Вам прислали файл сильно разукрашенный по цветам и его нужно очистить от форматов? Сделать это очень просто: выделяете нужный вам диапазон данных или весь лист сразу (нажав на уголок в левом верхнем углу таблиц).

Теперь ищите на ленте задач на вкладке Главная раздел Редактирование — в нем жмите кнопку Очистить

На выбор у вас будет несколько пунктов. Вы сможете
- Очистить все — т.е. удалить все данные на листе и форматы в том числе
- Очистить форматы — это как раз то, что нужно для примера
- Очистить содержимое — очищаем данные в ячейках, не трогая форматы
- Очистить примечания — удобная функция, если кто-то сильно зарецензировал ваш лист и оставил много примечаний. Появилась относительно недавно.
- Очистить гиперссылки — совсем новая возможность, появившаяся в 2016 версии. Позволяет очистить все ссылки на листе. Очень удобно, если вы скопировали данные из интернета, например, из Википедии, почти всегда копируется множество гиперссылок.
Если вы уже нажали пункт 2, то все ваши форматы очистились.
Но часто к форматам причисляют и условное форматирование . Мы знаем, что такое форматирование очень сильно грузит действия на листе, поэтому я не советую делать слишком много условий при помощи этой функции. Но если вы получили переформатированную книгу (как правило за счет копирования данных с условным форматированием много раз), то нужно знать, как его удалить.
Опять выделяете нужную область или лист. Идете Главная — раздел Стили — Условное форматирование — Удалить правила и например Удалить правила со всего листа.

Все, условные форматирования тоже удалились!
Как очистить данные в ячейках Excel? Очистка данных по условиям
Как вы знаете, удалить данные/информацию в ячейках Excel можно:
- нажатием кнопки Delete на клавиатуре, после выделения нужной области
- нажатием кнопки Удалить содержимое Главная — раздел Редактирование — в нем жмите кнопку Очистить содержимое (см. описание выше)
- можно удалить не только данные, но и сами ячейки. Выделив, к примеру, строку, кликнуть правой кнопкой мыши и нажав кнопку Удалить (она же Ctrl + кнопка минус )

Помимо этого можно удалить данные и по нужным условиям.
Самое простое решение — сперва отобрать данные для удаления автофильтром . После чего вы можете удалить в выбранных ячейках все, что вам нужно — формат, данные или даже сами ячейки ( Ctrl + кнопка минус )
Если вам необходимо убрать формулы в имеющихся вычислениях, то воспользуйтесь специальной вставкой и скопируйте только значения ячеек туда же.
Удаление объектов, очистка листов от диаграмм или прочих добавленных объектов
Чтобы удалить диаграмму, или автофигуры, нужно сперва ее выбрать, а затем удалить кнопкой Delete или через правую кнопку мыши — Удалить (см. выше). Но как быть, если вам необходимо удалить сразу несколько объектов — зажмите Ctrl и выберите нужные объекты. Если объектов очень много, то придется воспользоваться макросом, например, предложенном в пункте 4, этой статьи .
Так же объекты можно удалить, если вы перейдете в меню Главная — раздел Редактирование — Найти и выделить — пункт Выделение группы ячеек — Объекты. Так можно очистить ячейки в Excel от объектов.

Напомню, что объекты могут значительно замедлять работу файла. Особенно, если данные копировались из внешнего источника.
Если же вам необходим специальный макрос для удаления специфических объектов, то пишите в комментариях или мне на почту!
Похожие статьи
- 26.09.2017Как убрать надпись страница в Excel? Страничный режимPosted in Оформление, Работа с файлом
- 23.05.2016Как заполнить пустые ячейки в таблице? Правильный вид таблицы Excel.Posted in Работа с текстом
- 16.11.2018Как вставить документ в Excel или Word целиком? Хранение доков внутри файловPosted in Работа с файлом
- 15.07.2016Представления Excel. Сохранить вид анализаPosted in Оформление
- 26.01.2017Как добавить фигуру в Excel? Применение автофигурPosted in Оформление
- 03.06.2017Стиль ссылок R1C1 в Excel. Когда вместо букв в столбцах цифрыPosted in Формулы, Оформление
- 05.06.2018Вертикальное написание текста в Word и ExcelPosted in Оформление
- 23.08.2017Почему виснет Excel? Использование 25% процессораPosted in Прочее, Работа с файлом
Как удалить несколько листов в Excel (7 способов)
Многие люди предпочитают, чтобы их рабочие книги Excel содержали только самую необходимую информацию. Если вы хотите очистить рабочую книгу и удалить ненужные данные, вам может понадобиться удалить сразу несколько строк. Существует множество методов, которые вы можете выбрать для достижения этой цели, и знакомство с ними может помочь вам выбрать технику, отвечающую вашим потребностям. В этой статье мы объясним ситуации, в которых эта практика может быть полезной, и поделимся семью способами удаления нескольких листов в Excel.
Когда удалять несколько листов в Excel
Вот несколько ситуаций, в которых вы можете захотеть удалить несколько листов в Excel:
- Избыточность: Если вы заменили листы на более актуальную версию, вы можете удалить старые листы для наглядности.
- Организация: Чтобы сделать файл более читабельным, вы можете удалить ненужные листы, а удаление нескольких листов одновременно может ускорить процесс.
- Безопасность: Если вы работали над проектом, содержащим конфиденциальные данные, вы можете удалить листы, когда закончите их использовать, чтобы защитить информацию компании.
- Ошибки: Можно случайно добавить лишние листы в файл, в результате чего вам придется удалить лишние листы.
- Хранение: Файлы Excel с большим количеством листов могут быть большими, и если вы хотите сэкономить место для хранения, консолидация информации и удаление лишних листов может помочь.
Как удалить несколько соседних листов в Excel с помощью опции листа
Вот как использовать опцию листа для удаления нескольких листов в Excel:
- Удерживайте нажатой кнопку Shift на клавиатуре.
- В нижней части окна Excel выберите вкладки листов, которые вы хотите удалить.
- Щелкните правой кнопкой мыши на любом из выбранных листов, чтобы появилось выпадающее меню.
- В верхней части выпадающего меню вы можете увидеть пункт Удалить опция. Щелкните эту опцию. Вы также можете щелкнуть правой кнопкой мыши и нажать D на клавиатуре, чтобы удалить.
Как удалить несколько несмежных листов в Excel с помощью опции листа
Вот как использовать опцию листа для удаления нескольких несмежных листов в Excel:
- Нажмите и удерживайте клавишу Ctrl клавиша на клавиатуре.
- Удерживая кнопку Ctrl, щелкните каждую вкладку листов, которые вы хотите удалить, чтобы выбрать их.
- Щелкните правой кнопкой мыши на вкладке листа и найдите Удалить в меню.
- Щелкните Удалить или нажмите кнопку D на клавиатуре, чтобы удалить выбранные листы.
Как удалить несколько листов в Excel с помощью ленты
Вот как использовать опцию ленты для удаления нескольких листов в Excel:
- Нажмите и удерживайте кнопку Shift клавиша.
- Выберите листы, которые вы планируете удалить, под вашими данными.
- Перейдите к Главная в вашей ленте.
- Найдите Ячейки группа в правой части ленты и щелкните стрелку, чтобы открыть выпадающее меню.
- Вы можете увидеть значок с несколькими ячейками и красной X помечены Delete. Нажмите эту кнопку.
- Появляется выпадающее меню. Выберите Удалить лист.
Как удалить несколько листов в Excel с помощью VBA
Вот как использовать Visual Basic for Applications (VBA), язык программирования Excel, для удаления нескольких листов:
- Нажмите кнопку Alt клавиша и F11 клавиша на клавиатуре, чтобы открыть редактор Visual Basic Editor (VBE).
- Сайт Проект-VBAProject панель может появиться в левом верхнем углу вашего окна. В этой панели найдите один из ваших листов и щелкните правой кнопкой мыши.
- Перейдите к Вставить и наведите курсор на стрелку.
- В раскрывающемся меню выберите опцию Модуль.
- Затем Excel откроет окно, в котором вы можете ввести код. Вставьте следующий код: Sub Delete_Multiple_Excel_Worksheets() ‘объявляем переменные
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim ws3 As Worksheet Set ws1 = Worksheets( Лист1 )
Set ws2 = Worksheets( Sheet2 )
Set ws3 = Worksheets( Лист3 ) ‘удалить три рабочих листа одновременно
ws1.Удалить
ws2.Удалить
ws3.Удалить End Sub - Отрегулируйте имена листов в коде так, чтобы они отражали листы, которые вы хотите удалить.
- При сохранении рабочей книги Excel может спросить вас, хотите ли вы сохранить рабочую книгу без макросов. Чтобы сохранить проект VB, выберите Нет.
Как удалить все листы, кроме активного листа, в Excel с помощью VBA
Вот как удалить все листы, кроме активного, с помощью VBA:
- Щелкните правой кнопкой мыши на вкладке активного листа в нижней части окна.
- Выберите Просмотр кода.
- Может появиться окно с модулем VBA. Введите следующий код: Option ExplicitSub deletemultiplesheets()
Dim spreadsheet As Worksheet
Приложение.DisplayAlerts = False
Для каждого листа в Листах
Если электронная таблица.Имя <> ActiveSheet.Имя Затем
электронная таблица.Удалить
End If
Следующий лист
Application.DisplayAlerts = True
End Sub - Нажмите Выполнить чтобы активировать код и удалить все неактивные электронные таблицы.
- Включите макросы при сохранении рабочей книги, чтобы сохранить работоспособность проекта VB.
Как удалить несколько листов с определенной текстовой строкой в Excel с помощью VBA
Вот как использовать VBA для удаления нескольких листов с определенной текстовой строкой:
- Щелкните имя электронной таблицы, которую вы хотите удалить, на вкладках листов в нижней части окна.
- Щелкните правой кнопкой мыши на имени, чтобы открыть меню параметров.
- Выбрать Просмотр кода чтобы открыть модуль VBA.
- Вставьте следующий код: Option ExplicitSub DeleteSheetWithSameName()
Dim spreadsheet As Worksheet
Приложение.DisplayAlerts = False
For Each spreadsheet In sheets
Если электронная таблица.Имя Like Текстовая строка & Текстовая строка & Текстовая строка Затем
MsgBox spreadsheet.Имя
электронная таблица.Удалить
End If
Next spreadsheet
Приложение.DisplayAlerts = True
End Sub - Заменить каждый Текстовая строка с текстовой строкой, включенной в любые листы, которые вы хотите удалить. Вы можете вручную добавить дополнительные текстовые строки, если вам нужно удалить больше листов, чем указано в коде.
- Нажмите на кнопку Запустить чтобы активировать код.
- Excel выдает диалоговое окно для подтверждения каждого листа, который вы хотите удалить. Проверьте, что вы ввели правильные имена листов, и нажмите кнопку OK.
- Сохраните файл с включенными макросами.
Как удалить несколько листов с помощью сочетания клавиш
Вот как использовать комбинацию клавиш для удаления нескольких листов в Excel:
- Выберите листы, которые вы хотите удалить.
- Нажмите кнопку Alt клавиша на клавиатуре.
- Отпустите Alt, затем нажмите кнопку H клавиша.
- После нажатия H, нажмите кнопку D ключ.
- Завершите работу с ярлыком, нажав кнопку S.
Советы по удалению нескольких листов в Excel
Вот несколько советов, которые могут помочь вам успешно удалить сразу несколько листов в Excel:
Изучите ресурсы VBA, прежде чем работать с кодом
Если вы новичок в кодировании, все равно можно успешно использовать опции VBA. Для ознакомления с тем, как работает VBA, может быть полезно изучить эту функцию и прочитать учебные материалы, объясняющие ее основы. Если в вашей организации есть специалисты, работающие с кодом, они могут помочь вам понять и настроить модули VBA.
Проверьте свою работу
Если вы работаете с большим объемом данных, важно перемещаться осторожно, чтобы сохранить все нужные вам листы. Прежде чем завершить удаление, перепроверьте, что вы ввели или выбрали правильные листы. Некоторые методы позволяют восстановить удаленные листы, но полезно выработать привычку регулярно просматривать свою работу.
Выберите метод, который отвечает вашим потребностям
Хотя некоторые методы могут показаться более простыми, чем другие, вы можете сэкономить время и энергию, изучив каждый метод и оценив свои потребности. Ваши данные могут лучше реагировать на код VBA, который отвечает вашим конкретным потребностям. Например, если у вас большой объем листов и ваш менеджер просит удалить все, где упоминается завершенный проект, использование опции текстовой строки поможет вам удалить их без ручного просмотра каждого листа.
Пожалуйста, обратите внимание, что ни один из продуктов, упомянутых в этой статье, не связан с Indeed.
Ключевые слова:
- indeed.com
