Коммуникация — очень полезная функция Excel. На самом деле очень часто пользователям приходится использовать информацию из других файлов. Но в некоторых ситуациях они способны причинить больше вреда, чем пользы. Ведь, например, если вы отправите эти файлы по почте, ссылки окажутся неработоспособными. Сегодня мы более подробно поговорим о том, что делать, чтобы избежать такой проблемы.
Ссылки в Excel чаще всего используются вместе с такими функциями, как ВПР, для извлечения информации из другой книги. Это может быть специальная ссылка, содержащая адрес не только ячейки, но и книги, в которой находятся данные. В результате эта ссылка выглядит так: = VLOOKUP (A2; ‘[Sales 2018.xlsx] Report’! $ A: $ F; 4; 0). Или, для упрощения представления, представьте адрес в следующей форме: = ‘Report [Sales 2018.xlsx]’! $ A1. Давайте посмотрим на каждый из соединительных элементов этого типа:
- [Продажи 2018.xlsx]. Этот фрагмент содержит ссылку на файл, из которого вам нужно получить информацию. Его еще называют источником.
- Отношение. Мы использовали следующее имя, но это не обязательно. Этот блок содержит имя листа, на котором вы хотите найти информацию.
- $ A: $ F и $ A1 — это адрес ячейки или диапазона с данными, содержащимися в этом документе.
Фактически, процесс создания ссылки на внешний документ называется ссылкой. После регистрации адреса ячейки, содержащейся в другом файле, содержимое вкладки «Данные» изменяется. А именно: становится активной кнопка «Изменить ссылки», с помощью которой пользователь может изменять существующие ссылки.
Суть проблемы
Как правило, дополнительных сложностей в использовании подключений не возникает. Даже если есть ситуация, когда ячейки меняются, все ссылки обновляются автоматически. Но если вы уже переименуете саму книгу или переместите ее на другой адрес, Excel станет бессильным. Таким образом выдает следующее сообщение.
Здесь у пользователя есть два возможных варианта действий в этой ситуации. Он может нажать «Продолжить», и тогда изменения не будут обновлены, или он может нажать кнопку «Изменить ссылки», с помощью которой он сможет обновить их вручную. После нажатия на эту кнопку появится дополнительное окно, в котором вы можете редактировать ссылки, указав, где в данный момент находится нужный файл и как он называется.
Кроме того, можно изменить ссылки, используя соответствующую кнопку, расположенную на вкладке «Данные». Пользователь также может узнать, что соединение разорвано, из-за ошибки #LINK, которая появляется, когда Excel не может получить доступ к информации, расположенной по определенному адресу, из-за того, что сам адрес недействителен.
Как разорвать связь в Эксель
Один из простейших способов разрешить описанную выше ситуацию, если вы не можете самостоятельно обновить расположение связанного файла, — удалить саму ссылку. Это особенно легко сделать, если документ содержит только одну ссылку. Для этого вам необходимо выполнить следующую последовательность действий:
- Откройте меню «Данные».
- Находим раздел «Подключения» и там — опцию «Изменить подключения».
- Затем нажмите «Отключить соединение».
Если вы собираетесь отправить эту книгу кому-нибудь еще, мы настоятельно рекомендуем сделать это раньше. Ведь после удаления ссылок все значения, содержащиеся в другом документе, будут автоматически загружены в файл, использованы в формулах, а вместо адреса ячейки информация в соответствующих ячейках будет просто преобразована в значения.
Как разорвать связь со всеми книгами
Но если количество ссылок становится слишком большим, их удаление вручную может занять много времени. Решить эту проблему за один раз можно с помощью специального макроса. Он находится в надстройке VBA-Excel. Вам необходимо активировать его и перейти на одноименную вкладку. Будет раздел «Ссылки», в котором мы должны нажать кнопку «Разорвать все ссылки».
Код на VBA
Если вы не можете активировать это дополнение, вы можете создать макрос самостоятельно. Для этого откройте редактор Visual Basic, нажав Alt + F11, и напишите следующие строки в поле ввода кода.
Sub UnlinkWorkBooks()
Тусклый WbLink
Тусклый я пока
Выберите Case MsgBox («Все ссылки на другие книги будут удалены из этого файла, а формулы, которые ссылаются на другие книги, будут заменены значениями». & VbCrLf & «Вы уверены, что хотите продолжить?», 36, «Разорвать ссылку?»)
Дело 7 «No
Выйти ниже
Конец выбора
WbLinks = ActiveWorkbook.LinkSources (Тип: = xlLinkTypeExcelLinks)
Если не пусто (WbLinks) Тогда
Для i = 1 для UBound (WbLinks)
ActiveWorkbook.BreakLink Имя: = WbLinks (i), Тип: = xlLinkTypeExcelLinks
Следующий
Другой
MsgBox «В этом файле нет ссылок на другие книги.», 64, «Ссылки на другие книги»
Конец, если
Конец подзаголовка
Как разорвать связи только в выделенном диапазоне
Время от времени количество ссылок очень велико и пользователь опасается, что после удаления одной из них он не сможет вернуть все без надобности. Но этой проблемы легко избежать. Для этого вам нужно выбрать диапазон, в котором нужно удалить ссылки, а затем удалить их. Для этого вам необходимо выполнить следующую последовательность действий:
- Выберите набор данных, в который вы хотите внести изменения.
- Установите надстройку VBA-Excel, затем перейдите на соответствующую вкладку.
- Затем найдите меню «Ссылки» и нажмите кнопку «Разорвать ссылки в выбранных диапазонах».
После этого все ссылки в выбранном наборе ячеек будут удалены.
Что делать, если связи не разрываются
Все описанное выше звучит неплохо, но на практике всегда есть какие-то нюансы. Например, может возникнуть ситуация, когда соединения не разорваны. В этом случае по-прежнему отображается диалоговое окно, что ссылки не могут быть обновлены автоматически. Что делать в этой ситуации?
- Во-первых, вам нужно проверить, содержится ли какая-либо информация в названных диапазонах. Для этого нажмите комбинацию клавиш Ctrl + F3 или откройте вкладку «Формулы» — «Диспетчер имен». Если имя файла полное, вам просто нужно его отредактировать или удалить совсем. Перед удалением именованных диапазонов вам необходимо скопировать файл в другое место, чтобы вы могли вернуться к исходной версии, если вы сделаете что-то неправильно.
- Если вы не можете решить проблему, удалив имена, вы можете проверить условное форматирование. Вы можете ссылаться на ячейки из другой таблицы в правилах условного форматирования. Для этого нужно найти соответствующий пункт на вкладке «Главная», затем нажать кнопку «Диспетчер файлов».
Обычно Excel не предлагает возможности предоставить адрес других книг в условном форматировании, но это делается путем ссылки на именованный диапазон со ссылкой на другой файл. Обычно даже после удаления ссылки ссылка остается. Удалить такую ссылку не составит труда, потому что она фактически не работает. Поэтому ничего плохого не произойдет, если вы его удалите.
Вы также можете использовать функцию проверки данных, чтобы увидеть, нет ли ненужных ссылок. Ссылки обычно остаются, если используется тип проверки данных «Список». Но что делать, если ячеек много? Неужели нужно постоянно проверять каждую из них? Очевидно нет. В конце концов, это займет много времени. Поэтому необходимо использовать специальный код, чтобы сохранить его значимым образом.
Явный вариант
‘—————————————————————————————
Автор: The_Prist (Дмитрий Щербаков)
‘Профессиональная разработка приложений MS Office любой сложности
‘Проведение обучающих курсов в MS Excel
https://www.excel-vba.ru
‘info@excel-vba.ru
WebMoney — R298726502453; Яндекс.Деньги — 41001332272872
‘Сфера:
‘—————————————————————————————
Sub FindErrLink()
‘вам нужно посмотреть ссылку Data — Изменить ссылки на исходный файл
‘и напишите здесь ключевые слова в нижнем регистре (часть имени файла)
‘звездочка просто заменяет любое количество символов, поэтому вам не важно точное имя
Const sToFndLink $ = «* продажи за 2018 год*»
Dim rr As Range, rc As Range, rres As Range, s$
‘определить все ячейки с проверкой данных
В случае ошибки Продолжить Далее
Установите rr = ActiveSheet.UsedRange.SpecialCells (xlCellTypeAllValidation)
Если rr ничего, тогда
MsgBox «На активном листе нет ячеек с проверкой данных», vbInformation, «www.excel-vba.ru»
Выйти ниже
Конец, если
При ошибке Перейти к 0
‘проверить каждую ячейку на наличие соединений
Для каждого rc In rr
‘на всякий случай пропустим ошибки — это тоже может быть
‘но наши связи должны быть без них, и они обязательно будут найдены
s = «»
В случае ошибки Продолжить Далее
s = rc.Convalida.Formula1
При ошибке Перейти к 0
‘нашел — все собираем в отдельный ряд
Если LCase (s) как sToFndLink, то
Если ничего нет, то
Установите rres = rc
Другой
Установить rres = Union (rc, rres)
Конец, если
Конец, если
Следующий
‘если есть соединение, выберите все ячейки с этими элементами управления данными
Если ничего нет, то
rres.Select
‘rres.Interior.Color = vbRed’, если вам также нужно выделить цветом
Конец, если
Конец подзаголовка
вам нужно создать стандартный модуль в редакторе макросов, а затем поместить туда этот текст. Далее вызываем окно макроса с помощью комбинации клавиш Alt + F8, затем выбираем наш макрос и нажимаем кнопку «Выполнить». При использовании этого кода необходимо учитывать несколько моментов:
- Прежде чем искать ссылку, которая больше не актуальна, вы должны сначала определить внешний вид ссылки, по которой она была создана. Для этого зайдите в меню «Данные» и найдите пункт «Редактировать ссылки». Далее нужно посмотреть имя файла и указать его в кавычках. Например, вот так: Const sToFndLink $ = «* 2018 продажи*»
- имя можно написать не полностью, а просто заменить ненужные символы звездочкой. И в кавычках пишите имя файла строчными буквами. В этом случае Excel найдет в конце все файлы, содержащие эту строку.
- Этот код может проверять ссылки только на текущем активном листе.
- С помощью этого макроса вы можете выбрать только найденные ячейки. Придется удалить все вручную. Это преимущество, потому что вы можете все перепроверить.
- Вы также можете выделить ячейки специальным цветом. Для этого удалите апостроф перед этой строкой rres.Interior.Color = vbRed
Обычно после выполнения действий, описанных в приведенных выше инструкциях, ненужные ссылки больше не должны оставаться. Но если они есть в документе и ваша неспособность по той или иной причине их удалить (типичный пример — безопасность данных на листе), вы можете использовать другую последовательность действий. Эта инструкция действительна только для версий 2007 и более поздних версий.
- Сделайте резервную копию документа.
- Откроем этот документ с помощью архиватора. Вы можете использовать любой формат, поддерживающий формат ZIP, но WinRar, а также тот, который встроен в Windows, будет.
- В появившемся архиве нужно найти папку xl и открыть там externalLinks.
- В этой папке находятся все внешние ссылки, каждая из которых соответствует файлу формата externalLink1.xml. Все только пронумерованы, поэтому пользователь не может понять, что это за соединение. Чтобы разобраться, что за подключение, нужно открыть папку _rels и посмотреть ее там.
- Затем мы удаляем все определенные ссылки на основе того, что мы узнали из файла externalLinkX.xml.rels.
- Далее открываем наш файл с помощью Excel. Появится информация об ошибке, например «Ошибка в части содержания книги». Даём согласие. После этого появится другое диалоговое окно. Закрываем.
После этого все ссылки необходимо удалить.
У вас может возникнуть ситуация, когда нужно отправить кому-нибудь суммарный отчет в виде сводной таблицы, но при этом вы не хотите включать исходные данные. Другими словами, вы хотите отсоединить сводную таблицу от ее источника данных.
В Excel нет прямой возможности отделить сводную таблицу, но если вы выполните несколько простых шагов, то в конечном счете получите совершенную копию сводной таблицы. На рис. 172.1 показана красиво отформатированная сводная таблица. Если вы выберете сводную таблицу и скопируете ее в другое место, скопированный диапазон также будет сводной таблицей. Решение состоит в копировании и вставке значений.
Рис. 172.1. Эта сводная таблица будет отсоединена от своего источника данных
Выполните следующие шаги для создания отсоединенной копии сводной таблицы.
- Выберите ячейки сводной таблицы (
B3:F9
в данном примере) и нажмите Ctrl+C для копирования диапазона. - Выполните команду Главная ► Буфер обмена ► Вставить ► Вставить значения. Сводная таблица сохранит значения, но форматирование исчезнет (рис. 172.2).
Рис 172.2. Сводная таблица отсоединена, но настроек форматирования больше нет
Для того чтобы вернуть форматирование сводной таблицы, необходимо выполнить еще два дополнительных шага.
- Откройте область Буфер обмена, щелкнув на значке в правом нижнем углу группы Главная ► Буфер обмена.
- При выбранной отсоединенной сводной таблице щелкните в буфере обмена на пункте, соответствующем операции копирования сводной таблицы. Это будет последний пункт, если вы только не копировали что-то еще.
В результате сводная таблица останется отделенной от своего источника данных, но сохранит прежнее форматирование.
По теме
Новые публикации
Перейти к контенту
При открытии документа MS Word появляется предупреждение о наличии связных документов (связей) в исходном документе:
Документ содержит связи с другими файлами. Обновить в документе данные, связанные с другими файлами?
Такое предупреждение появляется, когда в документе есть ссылки на другие документы (например, на таблицу Excel). Удалить (разорвать) связи в документе MS Word возможно с помощью следующих несложных действий:
(Инструкция для версии MS Word 2016)
1. Открыть исходный документ для редактирования (меню «Вид» — «Изменить документ«):
2. В меню «Файл» выбрать пункт «Сведения«:
3. В разделе «Связные документы» нажимаем пункт «Изменить связи с файлами«:
4. В окне связи возможно удалить связь с другими (внешними) документами с помощью кнопки «Разорвать связь«:
Как обрезать таблицу в excel 2020
Для этого активизируйте любую ячейку в строке 26. Нажмите Shift+Пробел, затем Shift+End и в конце, удерживая нажатой Shift, нажмите клавишу ↓. Выполните команду Главная → Ячейки → Удалит → Удалить строки с листа(или щелкните правой кнопкой мыши на заголовке любой строки и выберите команду Удалить).
Как обрезать часть таблицы в Экселе?
Удаление строк и столбцов таблицы
- Выделите строки или столбцы таблицы, которые требуется удалить. …
- На вкладке Главная в группе Ячейки, щелкните стрелку рядом с кнопкой Удалить, а затем выберите команду Удалить строки таблицы или Удалить столбцы таблицы.
Как обрезать файл Эксель?
Обрезать по фигуре
Выделите картинку и нажмите команду Crop (Обрезка) в разделе Size (Размер) на вкладке Format (Формат).
Как в Excel убрать определенное количество символов?
Если нужно удалить знаки справа, то используем ЛЕВСИМВ, если слева, то ПРАВСИМВ. Нажимаем «Enter». Функция ЛЕВСИМВ или ПРАВСИМВ присваивает ячейке нужное нам количество символов из текста в новую ячейку, исключая ненужный нам индекс.
Каким образом обрезать лист Excel чтобы он не был бесконечным во все стороны?
F, нажимаете сочетание клавиш ctrl+shift+стрелка вправо (это выделит все столбцы до конца диапазона), нажимаете правой кнопкой мыши — Скрыть. Столбцы убрали. Теперь тоже самое делаем со строками — выделяем строку 4, ctrl+shift+стрелка вниз, правой кнопкой мыши — Скрыть.
Как задать рабочую область в Excel?
Рабочая область в Excel
- Для начала откройте два или более документа.
- На вкладке View (Вид) выберите команду Arrange All (Упорядочить все).
- Определите желаемый параметр расположения документов на экране. …
- Нажмите ОК.
- На вкладке View (Вид) нажмите Save Workspace (Сохранить рабочую область).
- Сохраните файл рабочей области (. …
- Закройте Excel.
Как уменьшить рабочую область в Excel?
Самый простой способ установить границы — просто спрятать все неиспользуемые столбцы и строки. На своем листе найдите последнюю строку, содержащую данные, и целиком выделите строку под ней, щелкнув кнопку строки. Удерживайте клавиши Ctrl и Shift и нажимайте стрелку вниз, чтобы выделить все строки ниже.
Как обрезать строки в Excel?
Как обрезать символы в Excel
- Обзор способов, позволяющих быстро обрезать значения ячеек и удалить лишний текст. …
- =ЛЕВСИМВ(текст, число_знаков)
- =ПРАВСИМВ(текст;ДЛСТР(текст)-ДЛСТР(ЛЕВСИМВ(текст; число_знаков)))
- =ПРАВСИМВ(текст, число_знаков)
- =ЛЕВСИМВ(текст;ДЛСТР(текст)-ДЛСТР(ПРАВСИМВ(текст; число_знаков)))
- Количество полей при этом не ограничено.
Как ограничить область в Excel?
Нажмите Ctrl+1. В появившемся диалоговом окне Формат ячеек перейдите на вкладку Защита и снимите флажок Защищаемая ячейка. Затем выберите команду Рецензирование ► Изменения ► Защитить лист и в открывшемся диалоговом окне Защита листа снимите флажок Выделение заблокированных ячеек (рис.
Как обрезать изображение в Excel?
Обрезка до стандартных пропорций
- Чтобы добавить рисунок в файл Office (например, документ Word, презентацию PowerPoint или книгу Excel), на вкладке Вставка нажмите кнопку Рисунки.
- Щелкните рисунок.
- В разделе Работа с рисунками на вкладке Формат в группе Размер щелкните стрелку под кнопкой Обрезать.
Как в Excel обрезать последние символы?
Как удалить первые или последние n символов из ячейки или строки в Excel?
- Удалите первые N символов с помощью формулы / UDF.
- Удалите последние N символов с помощью формулы / UDF.
- Пакетное удаление N символов слева, справа или посередине без формул.
Как в Excel в ячейке удалить часть текста?
Удалите ненужный текст из ячейки с помощью функции Text to Columns
- Выберите диапазон с ячейками, из которых вы хотите удалить ненужный текст, а затем нажмите Данные > Текст в столбцы. …
- В первом Мастер преобразования текста в столбцы, выберите разграниченный вариант, а затем щелкните Далее кнопку.
Как убрать первые символы в ячейке?
Выделите диапазон, на панели ! SEMTools в меню УДАЛИТЬ -> Символы -> обрезать выберите «с начала ячейки». В появившемся диалоговом окошке вбейте количество символов, которое хотите удалить, и нажмите ОК.
Как в Excel оставить только одну страницу?
- Откройте вкладку Разметка страницы. …
- Выберите вкладку Страница в диалоговом окне Параметры страницы.
- Установите переключатель разместить не более чем на в разделе Масштаб.
- Чтобы напечатать документ на одной странице, введите 1 в поля ширины и высоты.
Как в Экселе скрыть ненужную область?
Выделите ячейку в столбце (или ячейки в столбцах), который нужно скрыть. Затем выберите команду Главная ► Ячейки ► Формат ► Скрыть или отобразить ► Скрыть столбцы. Выделите столбцы и щелкните правой кнопкой мыши на заголовках этих столбцов, а потом в открывшемся контекстном меню выберите команду Скрыть.
Как убрать бесконечные столбцы в Excel?
Для этого активизируйте любую ячейку в столбце Н , нажмите Ctrl+Пробел, затем Shift+End и в конце, удерживая нажатой Shift, нажмите клавишу →. Выполните команду Главная → Ячейки → Удалить → Удалить столбцы с листа (или щелкните правой кнопкой мыши на заголовке любого столбца и выберите команду Удалить).
Excel works!
Excel работает за вас
- Залогиниться
- Зарегистрироваться
Excel works!
- Главная
- Excel
- Управление проектами
- Книги
- Прочее
- Аналитика
Thanks for Visiting
- Главная
- Excel
- Управление проектами
- Книги
- Прочее
- Аналитика
Как обрезать столбцы и строки в Excel для красоты?
Предположим, что вам нужно сделать титульный лист для своего файла Excel. Как сделать красивый лист без лишних ячеек — обрезать столбцы и строки в Excel, чтобы их не было видно?
Как обычно, все не сложно. Задаете нужный заголовок, как показано на примере, после чего выделяете первый столбец, который нужно скрыть, т.е. F, нажимаете сочетание клавиш ctrl+shift+стрелка вправо (это выделит все столбцы до конца диапазона), нажимаете правой кнопкой мыши — Скрыть. Столбцы убрали.
Теперь тоже самое делаем со строками — выделяем строку 4, ctrl+shift+стрелка вниз, правой кнопкой мыши — Скрыть.
Все, получилось то, что на картинке.
Осталась одна проблема область печати. Как, сделать так, чтобы все красиво уместилось на один лист.
Как обрезать столбцы и строки в Excel для красоты? 1ый Способ
Заходим Разметка страницы — Параметры страницы (см ниже)
В открывшемся окне выбираем нужные параметры, если нужно ограничить лист 1 страницей, «разместить не более чем на:» задаем значение 1 в обоих полях. Если же нужно чтобы, к примеру по ширине всегда был один лист, а по высоте бесконечно ставим ноль во втором окне.
2ой Способ
Заходим в панель Вид — в разделе Режимы просмотра книги выбираем Страничный режим. Теперь границы видимой области можно перемещать схватив за границу. На печать будет выводиться именно видимая область!
Удаление ячеек в Microsoft Excel
При работе с таблицами Excel довольно часто нужно не только вставить ячейки, но и удалить их. Процедура удаления, в общем, интуитивно понятна, но существует несколько вариантов проведения данной операции, о которых не все пользователи слышали. Давайте подробнее узнаем обо всех способах убрать определенные ячейки из таблицы Excel.
Процедура удаления ячеек
Собственно, процедура удаления ячеек в Excel обратна операции их добавления. Её можно подразделить на две большие группы: удаление заполненных и пустых ячеек. Последний вид, к тому же, можно автоматизировать.
Важно знать, что при удалении ячеек или их групп, а не цельных строк и столбцов, происходит смещение данных в таблице. Поэтому выполнение данной процедуры должно быть осознанным.
Способ 1: контекстное меню
Прежде всего, давайте рассмотрим выполнение указанной процедуры через контекстное меню. Это один и самых популярных видов выполнения данной операции. Его можно применять, как к заполненным элементам, так и к пустым.
- Выделяем один элемент или группу, которую желаем удалить. Выполняем щелчок по выделению правой кнопкой мыши. Производится запуск контекстного меню. В нем выбираем позицию «Удалить…».
- Ячейки, со сдвигом влево;
- Ячейки со сдвигом вверх;
- Строку;
- Столбец.
А, если был выбран второй пункт, то со сдвигом влево.
Способ 2: инструменты на ленте
Удаление ячеек в Экселе можно также произвести, воспользовавшись теми инструментами, которые представлены на ленте.
- Выделяем элемент, который следует удалить. Перемещаемся во вкладку «Главная» и жмем на кнопку «Удалить», которая располагается на ленте в блоке инструментов «Ячейки».
Если вы захотите удалить горизонтальную группу ячеек указанным способом, то для этого будут действовать следующие правила.
- Выделяем эту группу элементов горизонтальной направленности. Кликаем по кнопке «Удалить», размещенной во вкладке «Главная».
Если же мы попробуем удалить вертикальную группу элементов, то сдвиг произойдет в другом направлении.
- Выделяем группу элементов вертикальной направленности. Производим щелчок по кнопке «Удалить» на ленте.
А теперь попытаемся произвести удаление данным способом многомерного массива, содержащего элементы, как горизонтальной, так и вертикальной направленности.
- Выделяем этот массив и жмем на кнопку «Удалить» на ленте.
Считается, что использование инструментов на ленте менее функционально, чем удаление через контекстное меню, так как данный вариант не предоставляет пользователю выбора направления сдвига. Но это не так. С помощью инструментов на ленте также можно удалить ячейки, самостоятельно выбрав направление сдвига. Посмотрим, как это будет выглядеть на примере того же массива в таблице.
- Выделяем многомерный массив, который следует удалить. После этого жмем не на саму кнопку «Удалить», а на треугольник, который размещается сразу справа от неё. Активируется список доступных действий. В нем следует выбрать вариант «Удалить ячейки…».
Способ 3: использование горячих клавиш
Но быстрее всего выполнить изучаемую процедуру можно при помощи набора сочетания горячих клавиш.
- Выделяем на листе диапазон, который желаем убрать. После этого жмем комбинацию клавиш «Ctrl»+»-« на клавиатуре.
Способ 4: удаление разрозненных элементов
Существуют случаи, когда нужно удалить несколько диапазонов, которые не являются смежными, то есть, находятся в разных областях таблицы. Конечно, их можно удалить любым из вышеописанных способов, произведя процедуру отдельно с каждым элементом. Но это может отнять слишком много времени. Существует возможность убрать разрозненные элементы с листа гораздо быстрее. Но для этого их следует, прежде всего, выделить.
- Первый элемент выделяем обычным способом, зажимая левую кнопку мыши и обведя его курсором. Затем следует зажать на кнопку Ctrl и кликать по остальным разрозненным ячейкам или обводить диапазоны курсором с зажатой левой кнопкой мыши.
Способ 5: удаление пустых ячеек
Если вам нужно удалить пустые элементы в таблице, то данную процедуру можно автоматизировать и не выделять отдельно каждую из них. Существует несколько вариантов решения данной задачи, но проще всего это выполнить с помощью инструмента выделения групп ячеек.
- Выделяем таблицу или любой другой диапазон на листе, где предстоит произвести удаление. Затем щелкаем на клавиатуре по функциональной клавише F5.
Существуют и другие варианты удаления пустых элементов, более подробно о которых говорится в отдельной статье.
Как видим, существует несколько способов удаления ячеек в Excel. Механизм большинства из них идентичен, поэтому при выборе конкретного варианта действий пользователь ориентируется на свои личные предпочтения. Но стоит все-таки заметить, что быстрее всего выполнять данную процедуру можно при помощи комбинации горячих клавиш. Особняком стоит удаление пустых элементов. Данную задачу можно автоматизировать при помощи инструмента выделения ячеек, но потом для непосредственного удаления все равно придется воспользоваться одним из стандартных вариантов.
Мы рады, что смогли помочь Вам в решении проблемы.
Пустые ячейки – это неплохо, если вы намеренно оставляете их в нужных местах по эстетическим соображениям. Но в неправильных местах, они, безусловно, нежелательны. К счастью, есть относительно простой способ удалить пустоты в таблицах Excel, и сейчас вы узнаете все подробности этого метода.
Удалить пустые ячейки в Excel очень просто. Однако этот подход применим не во всех ситуациях. О возможных неприятных неожиданностях мы расскажем в этой статье. Чтобы обезопасить себя, обязательно сделайте резервную копию своего рабочего листа и прочтите эти предостережения, прежде чем действовать.
Удаляем пустые ячейки стандартными инструментами Excel.
Ну а теперь, когда вы предупреждены о возможных неприятных последствиях:
- Выберите диапазон, в котором вы хотите убрать пустоты. Чтобы быстро выбрать всю таблицу с данными, щелкните верхнюю левую позицию и затем нажмите Ctrl + Shift + End . Это сразу расширит выделение до последней использованной клетки.
- Нажмите F5 и щелкните Выделить… . Или перейдите на вкладку «Главная» и нажмите Найти…> Выделить группу ячеек.
- В диалоговом окне выберите «Пустые ячейки» и нажмите ОК. Это выделит все незаполненные позиции в вашем диапазоне.
- Щелкните правой кнопкой мыши на выделенном и выберите Удалить… из контекстного меню:
- В зависимости от макета ваших данных выберите сдвиг влево или вверх и нажмите кнопку «ОК». В этом примере мы используем второй вариант.
Вот и все. Вы успешно удалили пустоты в своей таблице:
Примечание. Если что-то пошло не так, не паникуйте и сразу нажмите Ctrl + Z , чтобы вернуть свои данные в исходное состояние.
Думаю, вы понимаете, что такой метод подходит для перечней данных, в которых нет формул. Ведь ссылки в формулах в результате таких действий скорее всего поломаются, и вы получите искаженные данные либо вовсе ошибки.
Когда не следует удалять пустые ячейки.
Техника, описанная выше, отлично подходит для одного столбца или строки. Он также может успешно удалять пустые клетки в диапазоне независимых строк или столбцов, как в приведенном выше примере. Однако это может нанести ущерб данным, которые связаны друг с другом при помощи формул. Чтобы этого не произошло, будьте очень осторожны при удалении пробелов в рабочих листах и помните о следующих предостережениях:
- Удаляйте пустые строки и столбцы вместо отдельных ячеек.
Если ваши данные организованы в виде таблицы, в которой элементы содержат связанную информацию, удаление отдельных пустых ячеек с большой вероятностью приведет к искажению данных. В этом случае следует удалять только незадействованные строки и столбцы целиком. Рекомендуем ознакомится с рекомендациями, как можно и как нельзя удалять пустые строки в Excel.
- Удаление не работает для таблиц Excel.
Невозможно удалить отдельные ячейки в таблице Excel (но не в диапазоне данных). Вам разрешено удалять только целые строки таблицы. Или вы можете сначала преобразовать таблицу в диапазон, а затем заняться удалением.
- Вашими действиями могут быть повреждены формулы и именованные диапазоны.
Формулы Excel могут адаптироваться ко многим изменениям, внесенным в данные, которые они используют. Многим, но не всем. В некоторых случаях формулы, ссылающиеся на удалённые вами ячейки, перестают работать. Поэтому после удаления незаполненных ячеек взгляните внимательно на соответствующие формулы и именованные диапазоны, чтобы убедиться, что они работают нормально.
Как извлечь список данных без пустот.
Если вы опасаетесь, что удаление пустых ячеек в столбце может исказить ваши данные, оставьте исходный столбец как есть и извлеките заполненные ячейки в другое место.
Этот метод удобен, когда вы создаете собственный список или раскрывающийся список проверки данных и хотите убедиться, что в нем нет пустот.
Итак, наш список находится в диапазоне A2:A12. Причем, в A4 записано пустое значение «». Рассмотрим 5 методов, при помощи которых мы попытаемся избавиться от пустых ячеек и сформировать в нужном нам месте новый список без пробелов.
Способ 1.
Введите приведенную ниже формулу массива в C2, нажмите Ctrl + Shift + Enter , чтобы заполнить ее правильно, а затем скопируйте формулу в еще несколько ячеек вниз по столбцу. Количество ячеек, в которые вы копируете формулу, должно быть не меньше, чем количество элементов в вашем исходном списке.
Формулы для извлечения заполненных позиций:
=ЕСЛИОШИБКА(ИНДЕКС($A$2:$A$12; НАИМЕНЬШИЙ(ЕСЛИ(НЕ(ЕПУСТО($A$2:$A$12)); СТРОКА($A$1:$A$11);»»); СТРОКА(A1)));»»)
Обратите внимание, что диапазон в функции СТРОКА($A$1:$A$11) должен всегда начинаться с $A$1. И включать в себя он должен столько же позиций, сколько их в нашей области поиска. Иначе говоря, если в $A$2:$A$12 — 11 позиций, значит столько же их нужно указать и в $A$1:$A$11.
На скриншоте ниже показан результат:
Сразу отметим, что пустые значения «» здесь не исключаются из списка.
Сложную, на первый взгляд, логику формулы легко понять при ближайшем ее рассмотрении.
Итак, наша задача: вернуть первое значение, которое встретится в диапазоне A2:A12. В случае ошибки возвращаем пустоту («»).
Для вдумчивых пользователей Excel, которым интересно разбираться в деталях каждой новой формулы, вот пошаговое описание:
У вас есть функция ИНДЕКС, возвращающая значение из $A$2:$A$12 на основе порядкового номера строки (не реального номера, а относительного номера в этом диапазоне). При этом нам нужно учесть еще 2 вещи:
- Убедиться, что A2 не пустая
- Вернуть второе непустое значение в C3, третье непустое значение в C4 и так далее.
Обе эти задачи выполняются функцией НАИМЕНЬШИЙ:
НАИМЕНЬШИЙ(ЕСЛИ(НЕ(ЕПУСТО($A$2:$A$12)); СТРОКА($A$1:$A$11);»»); СТРОКА(A1)))
В нашем случае аргумент массива генерируется динамически следующим образом:
- НЕ(ЕПУСТО($A$2:$A$12)) определяет, какие позиции в целевом диапазоне заполнены, и для них возвращается ИСТИНА, в противном случае — ЛОЖЬ. Результирующий массив ИСТИНА и ЛОЖЬ проходит логическую проверку функции ЕСЛИ.
- ЕСЛИ оценивает каждый элемент массива ИСТИНА / ЛОЖЬ и возвращает соответствующий номер позиции для ИСТИНА, и ничего — для ЛОЖЬ:
В результате мы получаем массив и наша сложная функция преобразуется:
НАИМЕНЬШИЙ(; СТРОКА(A1))
Как видите, аргумент массива содержит только номера непустых ячеек (заметьте, это относительные положения элементов в массиве, т.е. A2 – имеет порядковый номер 1, A3 — это 2 и так далее).
Во втором аргументе мы имеем СТРОКА(A1), что указывает функции НАИМЕНЬШИЙ вернуть самое маленькое число. Из-за использования относительной ссылки номер увеличивается с шагом 1 при копировании формулы вниз. Итак, в C3 формула вернет номер второй по величине минимальный номер заполненной позиции в диапазоне (то есть, 2) и так далее.
Однако на самом деле нам не нужны номера позиций, а нужны их значения. Итак, мы вкладываем функцию НАИМЕНЬШИЙ в аргумент функции ИНДЕКС, заставляя возвращать значение из соответствующей позиции в диапазоне.
В качестве последнего штриха мы заключаем всю конструкцию в функцию ЕСЛИОШИБКА, чтобы заменить ошибки пустотами. Ошибки будут неизбежны, потому что вы не можете заранее знать, сколько непустых ячеек находится в целевом диапазоне, и копируете формулу вниз по столбцу в заведомо большее количество ячеек, чем это необходимо.
Способ 2.
Если нужно избавиться и от пустых ячеек, и от пустых значений, то можно использовать приведённую ниже формулу массива.
=ЕСЛИ(СТРОКА() -СТРОКА($C$2:$C$12)+1>ЧСТРОК($A$2:$A$12) -СЧИТАТЬПУСТОТЫ($A$2:$A$12);»»;ДВССЫЛ(АДРЕС(НАИМЕНЬШИЙ((ЕСЛИ($A$2:$A$12<>»»;СТРОКА($A$2:$A$12);СТРОКА()+ЧСТРОК($A$2:$A$12)+1));СТРОКА() -СТРОКА($C$2:$C$12)+1);СТОЛБЕЦ($A$2:$A$12);4)))
Как и в предыдущем случае, вы вводите выражение в первую позицию вашей области с результатами, а затем копируете вниз по столбцу, насколько это необходимо.
Естественно, не забываем ввод заканчивать комбинацией Ctrl + Shift + Enter .
Недостатком здесь является то, что нужно точно указывать размеры исходного и результирующего диапазонов. Причем, с абсолютными ссылками.
Способ 3.
Это тоже формула массива. Но, в отличие от предыдущих двух, ее нужно вводить сразу в диапазон. Если основываться на наших условных данных, то выделяем при помощи мыши диапазон C2:C12, а затем в строку формул записываем следующее выражение:
Естественно, заканчиваем всё нажатием Ctrl + Shift + Enter .
Еще одной особенностью этого метода является то, что мы сравниваем каждую позицию с эталоном — с совершенно пустой ячейкой. В нашей формуле это D1.
Сравниваем значение D1 с каждым элементом исходного диапазона $A$2:$A$12.
СТРОКА(ДВССЫЛ(«1:»&ЧСТРОК($A$2:$A$12))))) — счетчик массива от первого до его последнего элемента.
При помощи функции ИНДЕКС выводим только непустые элементы.
Создаем дополнительный столбец А. В нем будем нумеровать непустые ячейки.
Для этого проверяем выполнение 2 условий:
- ячейка в столбце В непустая,
- она не равна 0.
Если условия выполнены, считаем количество чисел, находящихся в этом столбце выше текущей позиции, и увеличиваем результат на 1 (своего рода счётчик). То есть, записываем, какая по счету непустая позиция найдена. Если же клетка в столбце В пустая, то ставим «».
Копируем эту формулу вниз по столбцу. Получаем последовательную нумерацию непустых ячеек.
Переходим ко второму шагу. Функция ВПР (VLOOKUP) последовательно ищет значения начиная с 1 в столбце А и выводит соответствующие им значения из В.
Для получения последовательности чисел используем СТРОКА().
Копируем формулу вниз, получаем список без пустот. Работает такая конструкция быстро, независимо от количества данных. Да и сами формулы просты и вполне доступны для понимания, в отличие от формул массива. Так что можете взять на вооружение и этот способ.
Способ 5.
Предвидя то, что многим может не понравиться торчащий на самом виду вспомогательный столбец А с цифрами, предлагаю еще один метод избавления от пустых ячеек. Здесь мы используем так называемый «левый ВПР». Поэтому вспомогательный столбец можно размещать в любом месте, где он не будет мешать. Чтобы не портить внешний вид вашей таблицы, можно использовать любой другой столбец, находящийся правее (например — Z). Мы же используем B для наглядности результатов.
В позиции B2 записываем вспомогательную формулу
D1 будет служить нам эталоном как абсолютно пустая. Последовательно сравниваем столбец А с ней. При этом игнорируются нули, а также содержимое нулевой длины «».
В С2 записываем:
При помощи ПОИСКПОЗ ищем в столбце B порядковые номера от 1 и далее, и функцией ИНДЕКС выводим соответствующее значение из столбца A. В результате в столбце С мы избавились от пустых ячеек в списке. При этом исходные данные мы не меняли, чем гарантировали себя от возможных ошибок.
Как удалить пустые ячейки после последней позиции с данными.
Пустые ячейки, содержащие форматирование или непечатаемые символы, могут вызвать множество проблем в Excel. Например, вы можете получить гораздо больший размер файла, чем необходимо, или напечатать несколько чистых страниц. Чтобы избежать этих проблем, мы удалим (или очистим) пустые строки и столбцы, содержащие форматирование, пробелы или неизвестные невидимые символы.
Как найти последнюю использованную ячейку на листе
Чтобы перейти к последней ячейке на листе, содержащей данные или форматирование, щелкните в любом месте вашей таблицы и нажмите Ctrl + End .
Если в результате этого действия выбрана последняя ячейка с вашими данными, это означает, что оставшиеся строки и столбцы действительно не используются и никаких дополнительных манипуляций не требуется.
Но если вы оказались в визуально пустой клетке, знайте, что Excel не считает её таковой. Это может быть простой пробел, созданный случайным нажатием клавиши, пользовательский формат чисел, установленный для неё, или непечатаемый символ, импортированный из внешней базы данных. Какой бы ни была причина, она не пуста.
Как удалить ячейки после последней позиции с данными.
Чтобы очистить все содержимое и форматирование после последней заполненной ячейки, выполните следующие действия:
- Щелкните заголовок первого незаполненного столбца справа от вашей таблицы и нажмите Ctrl + Shift + End . Это позволит выбрать диапазон справа между вашими данными и последней использованной позицией на листе.
- На вкладке «Главная» нажмите «Очистить». Или щелкните на выделении правой кнопкой мыши и выберите Удалить.
- Щелкните заголовок первой чистой строчки под данными и нажмите Ctrl + Shift + End .
- Выполните те же действия, которые выполнялись в п.2.
- Нажмите Ctrl + S , чтобы сохранить книгу.
Проверьте используемый диапазон, чтобы убедиться, что он теперь содержит только ячейки с данными и без пробелов. Когда вы снова откроете файл, последняя использованная ячейка должна быть последней заполненной.
Примечание. Учитывая, что Microsoft Excel 2007–2019 содержит более 1 000 000 строк и более 16 000 столбцов, вы можете уменьшить размер рабочей области, чтобы пользователи не могли случайно вводить данные в неправильные места.
Если у вас есть небольшая рабочая область на листе и много ненужных чистых строк и столбцов, вы можете скрыть неиспользуемые строки следующим образом:
- Выберите строчку под последней позицией с данными (чтобы выделить её целиком, щелкните заголовок).
- Нажмите Ctrl + Shift + ↓ (стрелка вниз), чтобы расширить выделение до нижней части листа.
- Нажмите Ctrl + 9 , чтобы скрыть выбранные строки.
Думаю, это лучше, чем удалять ненужные строки, поскольку их в любой момент можно вернуть обратно.
Подобным же образом вы скрываете неиспользуемые столбцы:
- Выберите чистый столбец после последнего столбца с данными.
- Нажмите Ctrl + Shift + → (стрелка вправо), чтобы выделить все остальные неиспользуемые столбцы до конца листа.
- Нажмите Ctrl + 0 , чтобы скрыть выбранные колонки. Готово!
Если позже вы решите отобразить все ячейки, выберите весь лист (можно при помощи Ctrl + A ), затем нажмите Ctrl + Shift + 9 , чтобы показать все строки, и Ctrl + Shift + 0 , чтобы показать все столбцы.
Вот как вы можете избавиться от пустых ячеек в Excel. Благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!
Проверка данных в Excel: как сделать, использовать и убрать — Мы рассмотрим, как выполнять проверку данных в Excel: создавать правила проверки для чисел, дат или текстовых значений, создавать списки проверки данных, копировать проверку данных в другие ячейки, находить недопустимые записи, исправлять и удалять проверку данных.…
Быстрое удаление пустых столбцов в Excel — В этом руководстве вы узнаете, как можно легко удалить пустые столбцы в Excel с помощью макроса, формулы и даже простым нажатием кнопки. Как бы банально это ни звучало, удаление пустых столбцов в Excel не может…
Как полностью или частично зафиксировать ячейку в формуле — При написании формулы Excel знак $ в ссылке на ячейку сбивает с толку многих пользователей. Но объяснение очень простое: это всего лишь способ ее зафиксировать. Знак доллара в данном случае служит только одной цели — он указывает,…
Чем отличается абсолютная, относительная и смешанная адресация — Важность ссылки на ячейки Excel трудно переоценить. Ссылка включает в себя адрес, из которого вы хотите получить информацию. При этом используются два основных вида адресации – абсолютная и относительная. Они могут применяться в разных комбинациях…
Относительные и абсолютные ссылки – как создать и изменить — В руководстве объясняется, что такое адрес ячейки, как правильно записывать абсолютные и относительные ссылки в Excel, как ссылаться на ячейку на другом листе и многое другое. Ссылка на ячейки Excel, как бы просто она ни…
6 способов быстро транспонировать таблицу — В этой статье показано, как столбец можно превратить в строку в Excel с помощью функции ТРАНСП, специальной вставки, кода VBA или же специального инструмента. Иначе говоря, мы научимся транспонировать таблицу. В этой статье вы найдете…
4 способа быстро убрать перенос строки в ячейках Excel — В этом совете вы найдете 4 совета для удаления символа переноса строки из ячеек Excel. Вы также узнаете, как заменять разрывы строк другими символами. Все решения работают с Excel 2019, 2016, 2013 и более ранними версиями. Перенос…
Как быстро заполнить пустые ячейки в Excel? — В этой статье вы узнаете, как выбрать сразу все пустые ячейки в электронной таблице Excel и заполнить их значением, находящимся выше или ниже, нулями или же любым другим шаблоном. Заполнять пустоты или нет? Этот вопрос часто…
Как посчитать количество пустых и непустых ячеек в Excel — Если ваша задача — заставить Excel подсчитывать пустые ячейки на листе, прочтите эту статью, чтобы найти 3 способа для этого. Узнайте, как искать и выбирать среди них нужные с помощью стандартных инструментов поиска, или же просто…
Как объединить строки в Excel без потери данных? Примеры и советы. — Объединение строк в Excel — одна из самых распространенных задач, которые нам нужно выполнять время от времени. Проблема в том, что Microsoft Excel не предоставляет для этого надежного инструмента. Кроме того, при использовании стандартного объединения…
Есть Таблица с перечислениями.
На ее основе построены две _сводные_ таблицы для анализа в различных разделах.
Почему то, если в одной из сводных таблиц я делаю группировку ро полю дата (по месяцам), то такая же группировка появляется и во второй сводной таблице, чего мне НЕ нужно.
Реально ли это как то исправить?
Да, реально, если не использовать общий кэш
Подскажите, пожалуйста, как можно для каждой (отдельной) сводной таблицы использовать свой (отдельный) кэш, при условии, что они обе построены на основе одной и тоже таблицы?
Для построения «отвязанной» сводной таблицы нужно вывести на панель быстрого запуска кнопку — Мастер сводных таблиц и диаграмм (как добавить кнопку, надеюсь, знаете) и строить следующую сводную таблицу с помощью Мастера.
- Профессиональные приемы работы в Microsoft Excel
-
►
Обмен опытом -
►
Microsoft Excel -
►
Две сводные_ таблицы, как отвязать
Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
Важно:
-
При разрыве связи с исходной книгой (внешним источником) все формулы, использующие значения в этой книге, преобразуются в свои текущие значения. Например, если разорвать связь с внешней ссылкой =СУММ([Budget.xls]Годовой! C10:C25), формула СУММ заменяется вычисляемой величиной, каким бы ни была формула. Кроме того, так как это действие нельзяотменить, вы можете сохранить версию конечной книги в качестве резервной копии.
-
Если используется диапазон внешних данных, параметр в запросе может использовать данные из другой книги. Может потребоваться проверить и удалить эти типы связей.
Разрыв связи
-
На вкладке Данные в группе Подключения нажмите кнопку Изменить связи.
Примечание: Отсутствие команды Изменить связи означает, что файл не содержит связанных данных.
-
В списке Источник выберите связь, которую требуется разорвать.
-
Чтобы выбрать несколько связанных объектов, щелкните каждый из них, удерживая нажатой клавишу CTRL.
-
Чтобы выделить все связи, нажмите клавиши CTRL+A.
-
-
Щелкните элемент Разорвать.
Удаление имени определенной ссылки
Если для ссылки использовался определенный имя, имя не удаляется автоматически. Чтобы удалить имя, с помощью следующих действий:
-
На вкладке Формулы в группе Определенные имена нажмите кнопку Диспетчер имен.
-
В диалоговом окне Диспетчер имен щелкните имя, которое нужно изменить.
-
Щелкните имя, чтобы выделить его.
-
Нажмите кнопку Удалить.
-
Нажмите кнопку ОК.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
Нужна дополнительная помощь?
Связь – это очень полезная возможность Excel. Ведь очень часто пользователям приходится использовать информацию из других файлов. Но в некоторых ситуациях они способны скорее нанести вред, чем принести пользу. Ведь, к примеру, если отправлять эти файлы по почте, ссылки оказываются нерабочими. Сегодня мы более подробно поговорим о том, что сделать для избежания такой проблемы.
Содержание
- Что такое связи в Excel
- Суть проблемы
- Как разорвать связь в Эксель
- Как разорвать связь со всеми книгами
- Код на VBA
- Как разорвать связи только в выделенном диапазоне
- Что делать, если связи не разрываются
Что такое связи в Excel
Связи в Excel очень часто используются вместе с такими функциями, как ВПР, чтобы получить информацию из другой книги. Она может иметь вид специальной ссылки, которая содержит адрес не только ячейки, но и книги, в которой данные расположены. В результате, такая ссылка имеет приблизительно такой вид: =ВПР(A2;'[Продажи 2018.xlsx]Отчет’!$A:$F;4;0). Или же, для более простого представления, представить адрес в следующем виде: ='[Продажи 2018.xlsx]Отчет’!$A1. Разберем каждый из элементов ссылки этого типа:
- [Продажи 2018.xlsx]. Этот фрагмент содержит ссылку на файл, из которого нужно достать информацию. Его также называют источником.
- Отчет. Это мы использовали следующее имя, но это не название, которое должно обязательно быть. В этом блоке содержится название листа, в каком надо находить информацию.
- $A:$F и $A1 – адрес ячейки или диапазона с данными, которые содержатся в этом документе.
Собственно, процесс создания ссылки на внешний документ и называется связыванием. После того, как мы прописали адрес ячейки, содержащейся в другом файле, изменяется содержимое вкладки «Данные». А именно – становится активной кнопка «Изменить связи», с помощью которой пользователь может отредактировать имеющиеся связи.
Суть проблемы
Как правило, никаких дополнительных трудностей с тем, чтобы использовать связи, не возникает. Даже если возникает ситуация, в которой ячейки изменяются, то все связи автоматически обновляются. А вот если уже переименовать саму книгу или же переместить ее по другому адресу, Excel становится бессилен. Поэтому выдает следующее сообщение.
Тут перед пользователем появляется два возможных варианта, как действовать этой ситуации. Он может нажать «Продолжить» и тогда изменения не обновятся, или же нажать кнопку «Изменить связи», с помощью которой он может обновить их вручную. После того, как мы нажмем эту кнопку, появится дополнительное окно, в котором можно будет изменить связи, указав, где находится правильный файл в данный момент и как он называется.
Кроме этого, можно отредактировать связи через соответствующую кнопку, расположенную на вкладке «Данные». О том, что связь нарушена, пользователь может также узнать по ошибке #ССЫЛКА, которая появляется тогда, когда эксель не может получить доступ к информации, расположенной по определенному адресу из-за того, что сам адрес недействительный.
Как разорвать связь в Эксель
Один из самых простых методов решения описанной выше ситуации в случае, если не получается обновить местонахождение связанного файла самостоятельно – удалить саму связь. Особенно просто это сделать, если в документе содержится только одна связь. Для этого надо выполнить следующую последовательность шагов:
- Открываем меню «Данные».
- Находим раздел «Подключения», и там – опцию «Изменить связи».
- После этого нажимаем на «Разорвать связь».
Если собираетесь отправлять эту книгу по почте другому человеку, настоятельно рекомендуется это сделать до этого. Ведь после удаления связей все значения, которые содержатся в другом документе, будут автоматически загружены в файл, использованы в формулах, и вместо адреса ячейки информация в соответствующих ячейках будет просто трансформирована в значения.
Как разорвать связь со всеми книгами
Но если количество связей становится слишком большим, вручную их удалять может занять немало времени. Чтобы решить эту проблему за один раз, можно воспользоваться специальным макросом. Он находится в аддоне VBA-Excel. Нужно его активировать и перейти на одноименную вкладку. Там будет находиться раздел «Связи», в котором нам надо нажать на кнопку «Разорвать все связи».
Код на VBA
Если же нет возможности активировать это дополнение, можно создать макрос самостоятельно. Для этого необходимо открыть редактор Visual Basic, нажав на клавиши Alt + F11, и в поле ввода кода записать следующие строки.
Sub UnlinkWorkBooks()
Dim WbLinks
Dim i As Long
Select Case MsgBox(«Все ссылки на другие книги будут удалены из этого файла, а формулы, ссылающиеся на другие книги будут заменены на значения.» & vbCrLf & «Вы уверены, что хотите продолжить?», 36, «Разорвать связь?»)
Case 7 ‘ Нет
Exit Sub
End Select
WbLinks = ActiveWorkbook.LinkSources(Type:=xlLinkTypeExcelLinks)
If Not IsEmpty(WbLinks) Then
For i = 1 To UBound(WbLinks)
ActiveWorkbook.BreakLink Name:=WbLinks(i), Type:=xlLinkTypeExcelLinks
Next
Else
MsgBox «В данном файле отсутствуют ссылки на другие книги.», 64, «Связи с другими книгами»
End If
End Sub
Как разорвать связи только в выделенном диапазоне
Время от времени количество связей очень большое, и пользователь боится, что после удаления какой-то из них не получится вернуть все назад, если какая-то была лишней. Но это проблема, которую легко не допустить. Для этого нужно выбрать диапазон, в котором осуществить удаление связей, а потом удалить их. Для этого надо выполнить следующую последовательность действий:
- Выделить тот набор данных, в котором надо вносить изменения.
- Устанавливаем дополнение VBA-Excel, после чего переходим на соответствующую вкладку.
- Далее находим меню «Связи» и нажимаем на кнопку «Разорвать связи в выделенных диапазонах».
После этого все связи в выделенном наборе ячеек будут удалены.
Что делать, если связи не разрываются
Все описанное выше звучит хорошо, но на практике всегда возникают какие-то нюансы. Например, может случиться ситуация, когда связи не разрываются. В этом случае все равно появляется диалоговое окно, что не получается автоматически обновить связи. Что же делать в этой ситуации?
- Сначала надо проверить, не содержится ли какая-то информация в именованных диапазонах. Для этого надо нажать на комбинацию клавиш Ctrl + F3 или же открыть вкладку «Формулы» – «Диспетчер имен». Если же имя к файлу указано полное, то нужно просто его отредактировать или же вовсе убрать. Перед тем, как удалять именованные диапазоны, необходимо скопировать файл в какое-то другое место, чтобы можно было вернуться к изначальному варианту, если были совершены неправильные действия.
- Если не получается решить проблему с помощью удаления имен, то можно проверить условное форматирование. Ссылка на ячейки в другой таблице может содержаться в правилах условного форматирования. Для этого надо найти соответствующий пункт на вкладке «Главная», а потом нажать на кнопку «Управление файлами».
Обычно Excel не дает возможности давать адрес других книг в условном форматировании, но это делается, если ссылаться на именованный диапазон с отсылкой на другой файл. Обычно даже после удаления связи ссылка остается. Нет никакой проблемы в том, чтобы убрать такую связь, потому что связь по факту нерабочая. Следовательно, ничего плохого не произойдет, если убрать ее.
Также можно воспользоваться функцией «Проверка данных», чтобы узнать, нет ли ненужных ссылок. Обычно связи остаются, если используется тип проверки данных «Список». Но что же делать, если ячеек много? Неужели необходимо последовательно проверять каждую из них? Конечно, нет. Ведь это займет очень много времени. Поэтому нужно воспользоваться специальным кодом, чтобы значительно сэкономить его.
Option Explicit
‘—————————————————————————————
‘ Author : The_Prist(Щербаков Дмитрий)
‘ Профессиональная разработка приложений для MS Office любой сложности
‘ Проведение тренингов по MS Excel
‘ https://www.excel-vba.ru
‘ info@excel-vba.ru
‘ WebMoney — R298726502453; Яндекс.Деньги — 41001332272872
‘ Purpose:
‘—————————————————————————————
Sub FindErrLink()
‘надо посмотреть в Данные -Изменить связи ссылку на файл-иточник
‘и записать сюда ключевые слова в нижнем регистре(часть имени файла)
‘звездочка просто заменяет любое кол-во символов, чтобы не париться с точным названием
Const sToFndLink$ = «*продажи 2018*»
Dim rr As Range, rc As Range, rres As Range, s$
‘определяем все ячейки с проверкой данных
On Error Resume Next
Set rr = ActiveSheet.UsedRange.SpecialCells(xlCellTypeAllValidation)
If rr Is Nothing Then
MsgBox «На активном листе нет ячеек с проверкой данных», vbInformation, «www.excel-vba.ru»
Exit Sub
End If
On Error GoTo 0
‘проверяем каждую ячейку на предмет наличия связей
For Each rc In rr
‘на всякий случай пропускаем ошибки — такое тоже может быть
‘но наши связи должны быть без них и они точно отыщутся
s = «»
On Error Resume Next
s = rc.Validation.Formula1
On Error GoTo 0
‘нашли — собираем все в отдельный диапазон
If LCase(s) Like sToFndLink Then
If rres Is Nothing Then
Set rres = rc
Else
Set rres = Union(rc, rres)
End If
End If
Next
‘если связь есть — выделяем все ячейки с такими проверками данных
If Not rres Is Nothing Then
rres.Select
‘ rres.Interior.Color = vbRed ‘если надо выделить еще и цветом
End If
End Sub
Необходимо в редакторе макросов сделать стандартный модуль, а потом туда вставить этот текст. После этого вызвать окно макросов с помощью комбинации клавиш Alt + F8, а потом выбрать наш макрос и кликнуть по кнопке «Выполнить». При использовании этого кода есть несколько моментов, которые надо учитывать:
- Перед тем, как осуществлять поиск связи, которая уже не актуальна, нужно перед этим определить, как выглядит ссылка, через которую она создается. Для этого надо перейти в меню «Данные» и там найти пункт «Изменить связи». После этого надо посмотреть имя файла, и указать его в кавычках. Например, так: Const sToFndLink$ = «*продажи 2018*»
- Возможна запись имени не в полном виде, а просто заменить ненужные знаки звездочкой. А в кавычках записывать имя файла обязательно маленькими буквами. В этом случае Эксель найдет все файлы, которые содержат такую строку в конце.
- Этот код способен проверять наличие ссылок только в том листе, который сейчас активный.
- С помощью этого макроса можно лишь выделить ячейки, которые он обнаружил. Удалять придется все вручную. Это и плюс, потому что можно еще раз все перепроверить.
- Также можно сделать так, чтобы ячейки подсвечивались специальным цветом. Для этого нужно убрать знак апострофа перед этой строчкой. rres.Interior.Color = vbRed
Обычно после того, как выполнить действия, описанные в вышеприведенной инструкции, ненужных связей уже не должно оставаться. Но в случае наличия некоторых из них в документе и вашей неспособности по тем или иным причинам их убрать (типичный пример – защищенность данных в листе), то можно воспользоваться другой последовательностью действий. Эта инструкция справедлива лишь для версий 2007 и выше.
- Создаем резервную копию документа.
- Открываем этот документ с помощью архиватора. Можно воспользоваться любым, который поддерживает ZIP формат, но также подойдет и WinRar, а также встроенный в Windows.
- В появившемся архиве необходимо найти папку xl, а там открыть externalLinks.
- В этой папке находятся все внешние связи, каждая из которых соответствует файлу вида externalLink1.xml. Все они лишь пронумерованы, и поэтому пользователь не имеет возможности понять, какая именно эта связь. Чтобы понять, какая именно связь, надо открыть папку _rels, и там посмотреть его.
- После этого убираем все или конкретные связи, исходя из того, что мы узнаем в файле externalLinkX.xml.rels.
- После этого открываем наш файл средствами Excel. Там будет информация об ошибке типа «Ошибка в части содержимого в Книге». Даем согласие. После этого появится еще один диалог. Закрываем его.
После этого все связи должны быть удалены.
Оцените качество статьи. Нам важно ваше мнение: