Как в эксель найти недопустимую ссылку

[Excel2003-RUS]
1) Простой алгоритм выглядит так: Меню «Сервис»—«Проверка наличия ошибок…» (дублируется кнопкой на панели «Зависимости»).
Далее исправлять ошибки по очереди.
В данном случае Excel будет вести себя механистически — просто будет искать ошибочные ячейки сверху вниз. Поэтому до «первоисточника» путь может оказаться неблизким.
2) Списка ВСЕХ ошибок с рекомендациями — нет, не видел (справедливости ради, и не искал, т.к. с «неприятностями» справляюсь по мере их возникновения, а не коплю знания впрок).
3) Общие рекомендации по устранению конкретной ошибки даются в сообщении об ошибке: «Проверьте правильность указания пути, книги, названия диапазона и ссылки на ячейки.»
(примеч.: сама формулировка сообщения «…содержит ОДНУ ИЛИ НЕСКОЛЬКО …» говорит о том, что списка сразу всех «ошибочных ячеек» Excel Вам представить, скорее всего, не может. Переводя на человеческий — «есть как минимум одна, а сколько всего — не знаю»).
4) Некоторый общий перечень ошибок (не уверен, что всех) содержится в разделе справки «Поиск и исправление ошибок в формулах» (приведены причины/рекомендации по устранению по ошибкам «#####», «#ЗНАЧ!», «#ДЕЛ/0!», «#ИМЯ?», «#Н/Д», «#ССЫЛКА!», «#ЧИСЛО!», «#ПУСТО!». Описано «Наблюдение за формулой и результатом ячейки» при помощи «Окна контрольного значения». Даны инструкции по «пошаговому вычислению сложных формул». Описан метод «Прослеживание связей между формулами и ячейками» (трассировка зависимостей). Есть и подраздел «Исправление общих ошибок в формулах», включающий, например, работу со списком проверяемых/игнорируемых ошибок).

Проблему описал

gsheppar

в 2010 году на сайте mrexcel.com (по-английски). Оставлено без ответа.

http://www.mrexcel.com/forum/excel-questions/464779-run-time-error-1004-name-you-entered-not-valid.h…

Проблема «жива» и актуальна для версий Excel: 2010, 2013, 2016 (в 2007 — не проверял).

Сообщение от Excel: «Некоторые формулы на этом листе содержат недопустимые ссылки. Убедитесь, что ссылки на ячейки, имена диапазонов, определенные имена и связи с другими книгами в формулах указаны правильно.»

Штатные инструменты ошибок не видят (надстройка Name Manager, вроде, тоже). Указанные объекты выведены программно и проанализированы. Ошибок нет, но обнаружено, что использование в книге формул, введенных впервые в Excel 2007, приводят к создание имен с префиксом «_xlfn.» (своего рода, маркер):
Name                    RefersTo         RefersToLocal
_xlfn.COUNTIFS     =#NAME?      =#ИМЯ?
_xlfn.IFERROR       =#NAME?      =#ИМЯ?

Разумеется, в моей книге использованы соответствующие формулы (значения аргументов в скобках здесь рассматривать не надо):
=СЧЁТЕСЛИМН(КР;B$25;НаимОц10;$A26)
=ЕСЛИОШИБКА(ПЕРСЕНТИЛЬ(ЕСЛИ((КР=B$4)*НЕ(ЕПУСТО(БаллОц10));БаллОц10);0,25);НД())  

В Интернете пишут (врут), что это якобы случается, если открыть приложение, использующее новые формулы, в Excel 97-2003, но проверено, что это не так. Советуют также заменить новые формулы старыми решениями: например, вместо ЕСЛИОШИБКА (IFERROR) использовать комбинацию формул ЕСЛИ (IF) и ЕОШИБКА (ISERROR), а формулу СЧЁТЕСЛИМН (COUNTIFS) заменить на формулу СУММАПРОИЗВ (SUMPRODUCT) и т.д. и т.п. Увы, пробовал — заменил, но это не привело к желаемому результату: то самое сообщение продолжает выскакивать, как черт из табакерки: раздражает… Но всё работает. При этом, естественно, имена с префиксом «_xlfn.» исчезают (после сохранения книги и повторного открытия).
Очевидно, что эта проблема как была в Excel 2010, так и осталась в Excel 2016.
При открытии книги всё обстоит нормально, но стоит, например, изменить раз или другой раз, третий… размер таблицы (ListObject) на листе, и вдруг, совершенно неожиданно, появляется упомянутое сообщение и потом уже выходит постоянно при всяком изменении или сохранении файла, пока не перезапустишь Excel. В таблице, и на листе, где она размещена, вообще нет ни одной формулы (только исходные данные). Локализовать ошибку не удается.
Есть предположение, что это «косяк» Excel. Неужели надо воссоздать всё приложение заново, поэтапно, осторожно и с оглядкой? И тогда посмотреть. Или как?
Возможно, что никакой связи упомянутого сообщения с префисом имен «_xlfn.» нет вовсе. Кто знает, кто сталкивался с подобным?
Из-за этой ошибки приложение нельзя передать пользователям.

Excel

Вы пытаетесь сохранить электронную таблицу, когда получаете сообщение об ошибке, указывающее, что Excel обнаружил проблему с одной или несколькими ссылками на формулы. Вот как это исправить.

Вы пытаетесь сохранить файл Excel, над которым так усердно работали, но появляется сообщение об ошибке: Excel обнаружил проблему с одной или несколькими ссылками на формулы.

Это означает, что где-то в вашей электронной таблице что-то не так с одной из ваших формул. Если ваша электронная таблица большая, попытка найти ее может оказаться непростой задачей.

К счастью, есть некоторые исправления, которые вы можете попробовать, чтобы найти корень проблемы и убедиться, что ошибка «Excel обнаружила проблему с одной или несколькими ссылками на формулы» больше не появляется.

Используйте инструмент проверки ошибок

Один из самых быстрых способов найти ошибки в электронной таблице Excel — использовать Инструмент проверки ошибок. Если инструмент обнаружит какие-либо ошибки, вы можете исправить их и попробовать сохранить файл еще раз. Однако инструмент может не найти все типы ошибок.

Если средство проверки ошибок не находит ошибок или их исправление не решает проблему, попробуйте одно из других исправлений, указанных ниже.

Чтобы использовать инструмент проверки ошибок в Excel:

  1. Выберите Формулы вкладка
    меню формул excel
  2. Нажмите на Проверка ошибок инструмент.
    эксель проверка ошибок
  3. При обнаружении ошибки в инструменте появится информация о причине ошибки.
    ошибка ссылок excel
  4. Либо исправьте ошибку, либо удалите формулу, вызывающую проблему, если она не нужна.
  5. в Проверка ошибок инструмент, нажмите Следующий чтобы увидеть следующую ошибку и повторить процесс.
    Excel следующая ошибка
  6. Когда больше ошибок не будет найдено, вы увидите всплывающее окно, информирующее вас об этом факте.
    проверка ошибок excel завершена
  7. Повторите процесс для каждого листа документа.
  8. Попробуйте сохранить документ еще раз, чтобы проверить, исправлена ​​ли ошибка ссылки на формулу.

Найдите проблемный лист

Если средство проверки ошибок не находит причину вашей проблемы, вам нужно начать поиск самостоятельно.

Например, если у вас есть документ с несколькими листами, вам нужно сузить проблему до одного листа (или нескольких листов), вызывающего проблему.

Чтобы найти лист, вызывающий ошибку ссылки на формулу:

  1. Откройте первый лист в электронной таблице.
  2. Нажмите Ctrl+А в Windows или Cmd+А на Mac, чтобы выбрать весь лист. Кроме того, вы можете нажать кнопку в самом верхнем левом углу таблицы.
    эксель выбрать все
  3. Щелкните правой кнопкой мыши и выберите Копировать.
  4. В качестве альтернативы используйте сочетание клавиш Ctrl+С в Windows или Cмд+С на Mac.
    Excel копия
  5. Далее откройте Файл меню.
    меню файла excel
  6. Выбирать Пустая рабочая тетрадь.
    пустая рабочая тетрадь excel
  7. Щелкните правой кнопкой мыши в ячейке А1 и выберите Вставить икона.
  8. В качестве альтернативы используйте сочетание клавиш Ctrl+V в Windows или Ctrl+V на Mac.
    паста Excel
  9. Попробуйте сохранить новый файл. Если вы можете сохранить файл без ошибок, то этот конкретный лист не содержит источника вашей ошибки.
  10. Повторите эти действия с каждым листом документа, пока не найдете лист или листы, вызывающие проблемы.

Поиск ошибок

Теперь, когда вы знаете, какой лист или листы содержат причину ваших проблем, вы можете искать их, чтобы отследить любые ошибки, которые они могут содержать.

Самый простой способ сделать это — найти любые формулы, содержащие # символ. Это потому, что этот символ используется в начале сообщений об ошибках формулы.

Чтобы найти ошибки на листе Excel:

  1. Откройте лист, который, как вы обнаружили, содержит потенциальные ошибки.
  2. Нажмите Ctrl+F в Windows или Ctrl+F на Mac, чтобы открыть инструмент поиска.
  3. Тип # в Найти то, что поле и убедитесь, что Заглянуть установлен на Ценности.
    Excel найти
  4. Нажмите Находить Все чтобы найти все экземпляры ячейки, содержащие хэштег.
    эксель найти все
  5. Если какие-либо экземпляры будут найдены, они появятся в инструменте поиска. Вы можете нажать на каждую из них, чтобы перейти к этой ячейке и внести необходимые изменения, или просто удалить формулы, если они вам не нужны.
    эксель нашел ошибки
  6. Повторите процесс для всех других листов, которые, по вашему мнению, могут содержать ошибки.
  7. Попробуйте сохранить документ еще раз, чтобы узнать, устранена ли проблема.

Проверьте свои графики

Ошибка «Excel обнаружила проблему с одной или несколькими ссылками на формулы» также часто может быть вызвана недопустимыми ссылками на ваши диаграммы. Исправление этих ссылок может решить проблему.

Чтобы проверить исходные данные для ваших диаграмм Excel:

  1. Откройте лист, содержащий вашу диаграмму.
  2. Щелкните правой кнопкой мыши на графике и нажмите Выберите данные.
    excel выбрать данные
  3. Подтвердите, что Диапазон данных диаграммы является правильным и относится к действительному диапазону ячеек, содержащих данные.
    диапазон данных Excel
  4. Если это не так, измените диапазон, чтобы он ссылался на правильные ячейки, или удалите диаграмму, если она вам больше не нужна.
  5. Попробуйте сохранить документ Excel еще раз, чтобы проверить, возникает ли ошибка.

Проверьте внешние ссылки

Если ваш рабочий лист Excel ссылается на внешнюю электронную таблицу, которую вы удалили или переименовали, вы можете увидеть эту ошибку.

К счастью, в Excel есть инструмент, который может помочь вам проверить статус любых внешних ссылок.

Чтобы проверить действительность внешних ссылок в Excel:

  1. Нажмите на Данные меню.
    меню данных excel
  2. в Запросы и подключения раздел ленты, щелкните значок Редактировать ссылки инструмент.
    ссылки редактирования excel
  3. Вы увидите список внешних ссылок в вашем документе со статусом, указанным как Неизвестный.
    Эксель текущие ссылки
  4. Нажмите на Проверить состояние кнопка.
    статус проверки excel
  5. Статус ваших ссылок будет обновлен.
    статус ссылки excel
  6. Если одна из ваших ссылок показывает ошибку, исходный файл не может быть найден. Вы можете обновить местоположение исходного файла, нажав Изменить источник и выберите файл, на который вы хотите сослаться.
    excel изменить источник
  7. Если вам больше не нужно ссылаться на другой документ, вы можете удалить ячейку, содержащую внешнюю ссылку.
  8. Если многие ячейки относятся к документу, который больше не доступен, вы можете полностью удалить ссылку из документа, щелкнув эту ссылку и выбрав щелкните Разорвать ссылку. Это следует делать с осторожностью, так как вы потеряете все внешние ссылки на эту ссылку.
    эксель разрыв ссылки
  9. Вам нужно будет подтвердить свое решение, нажав Разорвать ссылки.
    эксель разрывает ссылки
  10. После того как вы исправите или удалите мошеннические ссылки, попробуйте снова сохранить документ.

Проверьте свои сводные таблицы

Еще одним распространенным источником ошибок ссылок в Excel являются сводные таблицы. Эти типы таблиц невероятно эффективны, но они также могут быть причиной ошибок, если ссылки больше недействительны.

Чтобы проверить свои сводные таблицы на наличие ошибок в Excel:

  1. Откройте лист, содержащий вашу сводную таблицу.
  2. Выберите сводную таблицу.
  3. На ленте щелкните значок Анализ сводной таблицы появившееся меню.
    excel сводной анализ
  4. На ленте щелкните Изменить источник данных.
    excel изменить источник данных
  5. Проверить Таблица/диапазон чтобы убедиться, что он относится к действительному диапазону ячеек.
    диапазон таблицы excel
  6. Если это не так, отредактируйте значения таблицы/диапазона или, если вам это не нужно, удалите сводную таблицу.
  7. Попробуйте сохранить документ еще раз.

Если вы видите всплывающее сообщение об ошибке «Excel обнаружил проблему с одной или несколькими ссылками на формулы», возможно, одно из приведенных выше исправлений решит проблему. Если вы найдете какие-либо другие способы предотвратить появление ошибки, сообщите нам об этом в комментариях ниже.

Изучение того, как исправить некоторые из наиболее распространенных ошибок Excel, поможет вам тратить больше времени на работу и меньше времени на то, чтобы рвать на себе волосы. Например, полезно знать, как найти циклическую ссылку в Excel.

Если Excel продолжает давать сбой, есть несколько полезных исправлений, которые вы можете попробовать. Если вы хотите игнорировать любые проблемы на листе, вы можете вместо этого игнорировать все ошибки в Excel.

Как исправить #REF! ошибка

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel для iPad Excel для iPhone Excel для планшетов с Android Excel 2010 Excel 2007 Excel для Mac 2011 Excel для телефонов с Android Excel для Windows Phone 10 Excel Mobile Excel Starter 2010 Еще…Меньше

Ошибка #REF! отображается, когда формула ссылается на недопустимую ячейку. Чаще всего это происходит потому, что формула ссылается на ячейки, которые были удалены или заменены другими данными.

В следующем примере в столбце E используется формула =СУММ(B2;C2;D2).

Формула с явными ссылками на ячейки, например =SUM(B2,C2,D2), может вызвать #REF! ошибка при удалении столбца.

Удаление столбцов B, C или D приведет к #REF! . В этом случае мы удалим столбец C (Продажи 2007), а формула теперь будет читать =СУММ(B2,#REF!,C2). Если вы используете явные ссылки на ячейки, как это (когда вы ссылаетесь на каждую ячейку по отдельности, разделенные запятой) и удаляете строку или столбец, на которые ссылается ссылка, Excel не может разрешить их, поэтому он возвращает #REF! могут вызвать текст и специальные знаки в ячейке. Это основная причина, по которой не рекомендуется использовать явные ссылки на ячейки в функциях.

Пример ошибки #ССЫЛКА! из-за удаления столбца.

Решение

  • Если вы случайно удалили строки или столбцы, вы можете немедленно нажать кнопку «Отменить» на панели быстрого доступа (или нажать клавиши CTRL+Z), чтобы восстановить их.

  • Измените формулу так, чтобы она ссылалась на диапазон, а не на отдельные ячейки, например =СУММ(B2:D2). Теперь можно удалить любой столбец в диапазоне суммирования, и Excel автоматически скорректирует формулу. Чтобы вычислить сумму значений в строках, также можно использовать формулу =СУММ(B2:B5).

В следующем примере =ВПР(A8;A2:D5;5;FALSE) вернет #REF! ошибка, так как она ищет значение, возвращаемое из столбца 5, но диапазон ссылок — A:D, то есть только 4 столбца.

Пример формулы ВПР с неправильным диапазоном.  Формула =VLOOKU(A8;A2:D5;5;FALSE).  В диапазоне ВПР нет пятого столбца, поэтому значение 5 вызывает #REF! могут вызвать текст и специальные знаки в ячейке.

Решение

Расширьте диапазон или уменьшите значение столбца для поиска так, чтобы он попадал в указанный диапазон. Формулы =ВПР(A8;A2:E5;5;ЛОЖЬ) будет работать правильно, так же как и формула =ВПР(A8;A2:D5;4;ЛОЖЬ).

В этом примере формула =INDEX(B2:E5,5;5) возвращает #REF! Ошибка, так как диапазон INDEX состоит из 4 строк на 4 столбца, но формула запрашивает возврат того, что находится в 5-й и 5-й строках.

Пример формулы ИНДЕКС с недопустимой ссылкой на диапазон.  Формула имеет вид =ИНДЕКС(B2:E5;5;5), но диапазон содержит всего 4 строки и 4 столбца.

Решение

Измените ссылки на строки и столбцы так, чтобы они попадали в диапазон поиска функции ИНДЕКС. Формула =ИНДЕКС(B2:E5;4;4) вернет правильный результат.

В следующем примере функция INDIRECT пытается ссылаться на закрытую книгу, вызывая #REF! могут вызвать текст и специальные знаки в ячейке.

Пример ошибки #ССЫЛКА! из-за использования функции ДВССЫЛ для ссылки на закрытую книгу.

Решение

Откройте книгу, на который ссылается ссылка. Эта же ошибка возникает при ссылке на закрытую книгу с динамической функцией массива.

Структурированные ссылки на имена таблиц и столбцов в связанных книгах не поддерживаются.

Вычисляемые ссылки на связанные книги не поддерживаются.

Перемещение или удаление ячеек вызвало недопустимую ссылку на ячейку, или функция возвращает ошибку ссылки.

Если вы использовали ссылку OLE, которая возвращает #REF! ошибка, а затем запустите программу, которую вызывает ссылка.

Примечание. OLE — это технология, которая используется для обмена информацией между приложениями.

Проблемы с макросами

Если макрос вводит на листе функцию, которая ссылается на ячейку над функцией, а ячейка, содержащая функцию, находится в строке 1, функция вернет #REF! поскольку нет ячеек над строкой 1. Проверьте функцию, чтобы узнать, ссылается ли аргумент на ячейку или диапазон ячеек, которые недопустимы. Для этого может потребоваться изменить макрос в редакторе Visual Basic (VBE), чтобы учесть эту ситуацию.

Дополнительные сведения

Обратитесь к эксперту. Обучайтесь у преподавателей в прямом эфире.

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

См. также

Полные сведения о формулах в Excel

Рекомендации, позволяющие избежать появления неработающих формул

Поиск ошибок в формулах

Функции Excel (по алфавиту)

Функции Excel (по категориям)

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

You’re going to need to find the formula and either alter the link or break it, nine times out of ten, you’ll have a cell reference going to a sheet or a work book that no longer exists (or isn’t open), this will occur more if you’re using .delete in your script

Unfortunately, Excel does not make it easy to find this link, you can look in the data tab and see existing connections, then break them. But previous experience has not had this work all the time.

You can also try this macro from Allen Wyatt, which will check your sheets and create a new sheet with a list of potential errors formula errors.

Sub CheckReferences()
' Check for possible missing or erroneous links in
' formulas and list possible errors in a summary sheet

  Dim iSh As Integer
  Dim sShName As String
  Dim sht As Worksheet
  Dim c, sChar As String
  Dim rng As Range
  Dim i As Integer, j As Integer
  Dim wks As Worksheet
  Dim sChr As String, addr As String
  Dim sFormula As String, scVal As String
  Dim lNewRow As Long
  Dim vHeaders

  vHeaders = Array("Sheet Name", "Cell", "Cell Value", "Formula")
  'check if 'Summary' worksheet is in workbook
  'and if so, delete it
  With Application
    .ScreenUpdating = False
    .DisplayAlerts = False
    .Calculation = xlCalculationManual
  End With

  For i = 1 To Worksheets.Count
    If Worksheets(i).Name = "Summary" Then
      Worksheets(i).Delete
    End If
  Next i

  iSh = Worksheets.Count

  'create a new summary sheet
    Sheets.Add After:=Sheets(iSh)
    Sheets(Sheets.Count).Name = "Summary"
  With Sheets("Summary")
    Range("A1:D1") = vHeaders
  End With
  lNewRow = 2

  ' this will not work if the sheet is protected,
  ' assume that sheet should not be changed; so ignore it
  On Error Resume Next

  For i = 1 To iSh
    sShName = Worksheets(i).Name
    Application.Goto Sheets(sShName).Cells(1, 1)
    Set rng = Cells.SpecialCells(xlCellTypeFormulas, 23)

    For Each c In rng
      addr = c.Address
      sFormula = c.Formula
      scVal = c.Text

      For j = 1 To Len(c.Formula)
        sChr = Mid(c.Formula, j, 1)

        If sChr = "[" Or sChr = "!" Or _
          IsError(c) Then
          'write values to summary sheet
          With Sheets("Summary")
            .Cells(lNewRow, 1) = sShName
            .Cells(lNewRow, 2) = addr
            .Cells(lNewRow, 3) = scVal
            .Cells(lNewRow, 4) = "'" & sFormula
          End With
          lNewRow = lNewRow + 1
          Exit For
        End If
      Next j
    Next c
  Next i

' housekeeping
  With Application
    .ScreenUpdating = True
    .DisplayAlerts = True
    .Calculation = xlCalculationAutomatic
  End With

' tidy up
  Sheets("Summary").Select
  Columns("A:D").EntireColumn.AutoFit
  Range("A1:D1").Font.Bold = True
  Range("A2").Select
End Sub

Понравилась статья? Поделить с друзьями:

Не пропустите также:

  • Как найти свою задолжность
  • Как найти мой кпп
  • Как найти центр тяжести однородной плоской
  • Как найти музыку в яндекс браузере
  • Как найти людей по стим айди

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии