Поиск ссылок (внешних ссылок) в книге
Excel для Microsoft 365 Excel 2021 Excel 2019 Excel 2016 Excel 2013 Excel 2010 Excel 2007 Еще…Меньше
Связывание с другими книгами — очень распространенная задача в Excel, но иногда вы можете найти книгу, которая ссылок не может найти, хотя Excel сообщает о том, что она существует. Нет способа автоматического поиска всех внешних ссылок, используемых в книге, однако существует несколько способов, используемых вручную. Вам нужно искать формулы, определенные имена, объекты (например, текстовые поля или фигуры), названия диаграмм и ряды данных диаграммы.
Имя любой Excel книги, с помощью ссылки на которую вы ссылались, будет связана с расширением XL* (например, .xls, .xlsx, XLSM), поэтому рекомендуемый способ — найти все ссылки на частичное расширение XL. Если вы ссылались на другой источник, необходимо определить оптимальный поисковый запрос.
Поиск ссылок, используемых в формулах
-
Нажмите CTRL+F, чтобы запустить диалоговое окно Найти и заменить.
-
Нажмите кнопку Параметры.
-
В поле Найти введите.xl.
-
В поле В пределах выберите книга.
-
В поле Искать в выберите формулы.
-
Нажмите кнопку Найти все.
-
В отображемом списке наймем в столбце Формула формул, содержащих XL. В этом случае Excel найдено несколько экземпляров функции бюджетного Master.xlsx.
-
Чтобы выбрать ячейку с внешней ссылкой, щелкните ссылку на эту строку в списке.
Совет: Щелкните любой за колонок, чтобы отсортировать столбец и сгруппировать все внешние ссылки.
-
На вкладке Формулы в группе Определенные имена выберите пункт Диспетчер имен.
-
Проверьте каждую запись в списке и проверьте, нет ли в столбце Ссылка внешних ссылок. Внешние ссылки содержат ссылку на другую книгу, например [Budget.xlsx].
Советы:
-
Щелкните любой за колонок, чтобы отсортировать столбец и сгруппировать все внешние ссылки.
-
Если вы хотите удалить сразу несколько элементов, можно сгруппнуть несколько элементов, нажав клавишу SHIFT или CTRL и щелкнув левой кнопкой мыши.
-
-
Нажмите клавиши CTRL+G, нажмите клавиши CTRL+G, чтобы перейти в диалоговое окно Перейти, а затем выберите специальные > объекты > ОК. При этом будут выбраны все объекты на активном сайте.
-
Нажимая клавишу TAB, переходить между выбранными объектами, а затем искать в строка формул ссылку на другую книгу, например [Budget.xlsx].
-
Щелкните название диаграммы, которую вы хотите проверить.
-
В строка формул наймем ссылку на другую книгу, например [Budget.xls].
-
Выберите диаграмму, которую нужно проверить.
-
На вкладке Макет в группе Текущий выделение щелкните стрелку рядом с полем Элементы диаграммы и выберите ряд данных, которые нужно проверить.
-
На строка формул , наймем ссылку на другую книгу, например [Budget.xls] в функции РЯД.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Исправление недействительных ссылок
Разрыв связи с внешним ресурсом в Excel
Управление обновлением внешних ссылок (связей)
Нужна дополнительная помощь?
Всем привет.
При обработке некоторой таблички в MS Excel возникла простенькая задача — надо было найти все формулы в которых участовала определенная ячейка. Ммм, попробуйте далее не читать и решить ее самостоятельно.
Ну а кому не втерпеж, слушаем далее. Итак для примера мне надо найти кто использует ячейку B4.
Первое решение — используем поиск. Указываем ячейку в поиске и нажимаем «Найти все». В результате имеем список всех ячеек где наша B4 участвует в расчетах. Для чего не подходит такой способ? Это не подходит в случае, если наша ячейка участвует в диапазоне типа «=СУММ(B3:B7)» или ссылка абсолютная «=B$4».
Решение второе — используем «Зависимости формул». Ух ты, какая фишка есть в MS Excel. Закладка «Формулы -> Зависимость формул -> Зависимые ячейки» и MS Excel сам показывает где участвует наша ячейка. Красиво правда? Согласен.
Однако есть небольшое ограничение. Если ваша ячейка на другом листе, то MS Excel покажет только наличие зависимости, но не скажет на каком именно листе книги находится искомая формула. Пишите макрос.
Такие дела. Успехов.
Коля nilem написал мне классный макрос котроый рвет все связи и при этом не трогает формулы листа..давно хотел прорекламировать -очень полезная штука может адаптируете себе для поиска таких ячеек.
Option Explicit
Option Compare Text
‘—————————————————————————————
‘ Module : Module1
‘ Author : Николай (nilem)
‘ Date : 05.09.2011
‘ Purpose : Mikki
‘—————————————————————————————
Sub CopyWithoutRef()
‘Dim tm!: tm = Timer
Dim r As Range, s As String, nm As Name
With Application
.ScreenUpdating = 0: .Calculation = xlCalculationManual
End With
ActiveSheet.Copy after:=ActiveSheet
With ActiveSheet
For Each r In .UsedRange.SpecialCells(xlCellTypeFormulas).Cells
s = r.Formula
If InStr(1, s, «!», vbTextCompare) Then
r.Value = r.Value
Else
For Each nm In ThisWorkbook.Names
If InStr(1, s, nm.Name, vbTextCompare) Then r.Value = r.Value: Exit For
Next nm
End If
Next r
End With
With Application
.ScreenUpdating = 1: .Calculation = xlCalculationAutomatic
End With
‘MsgBox Timer — tm
End Sub
‘Private Sub rtyrty()
‘Dim msg As String, nm As Name
»For Each nm In ActiveSheet.Names
‘For Each nm In ThisWorkbook.Names
‘ If nm.Visible = False Then
‘ msg = msg & «имя: » & nm.Name & vbCrLf
‘ End If
‘Next nm
‘MsgBox msg, 64
‘End Sub
‘—————————————————————————————
‘ Module : Module1
‘ Author : Николай (nilem)
‘ Date : 05.09.2011
‘ Purpose : Mikki
‘—————————————————————————————
Sub ertert()
Dim x, i&, ch As ChartObject, nm$
Application.ScreenUpdating = False
With Sheets(«Перевод»)
x = .Range(«B3:C» & .Cells(Rows.Count, 2).End(xlUp).Row).Value
End With: nm = ActiveSheet.Name
ActiveSheet.Copy after:=ActiveSheet
On Error Resume Next
With ActiveSheet
With .UsedRange.SpecialCells(2) ‘ константы
For i = 1 To UBound(x)
.Replace x(i, 1), x(i, 2)
Next i
End With
With .UsedRange.SpecialCells(-4123) ‘ формулы
For i = 1 To UBound(x)
.Replace x(i, 1) & » «, x(i, 2) & » «, xlPart
Next i
End With
For Each ch In .ChartObjects ‘ диаграммы
If ch.Chart.HasTitle = True Then
With ch.Chart.ChartTitle
For i = 1 To UBound(x)
If .Text = x(i, 1) Then .Text = x(i, 2): Exit For
Next i
End With
End If
Next ch
.Name = nm & «P» ‘P англ.
End With
Application.ScreenUpdating = True
End Sub
The Excel ADDRESS function is a Lookup & Reference formula that returns the address of a cell based on its input arguments. The function also allows you to set the type and reference style of the address. In this guide, we’re going to show you how to use the Excel ADDRESS function and also go over some tips and error handling methods.
Supported versions
- All Excel versions
Excel ADDRESS Function Syntax
ADDRESS(row_num, column_num, [abs_num], [a1], [sheet_text])
Arguments
row_num | An integer that specifies the row number of the cell you want to find the address for. |
column_num | An integer that specifies the column number of the cell you want to find the address for. |
[abs_num] |
Optional. A numeric value that specifies the type of reference.
|
[a1] |
Optional. A logical value that specifies the reference style.
|
[sheet_text] | Optional. A text value that specifies the name of the worksheet. By default, the reference returns without a sheet name. |
Examples
The Excel ADDRESS function requires two arguments to execute: row_num and column_num. Each argument specifies one of the coordinates for the target reference for which you want to find the address. The remaining three are optional arguments that configure the reference style.
The first optional argument, [abs_num] defines the absolute/relative type of the reference. You can simply omit it, or give it a number between 1 and 4 to set the type of the reference. Now, let’s take a closer look at how the function works.
A1-reference (Default style)
The A1 reference system is Excel’s default system, and it is the default configuration for the ADDRESS function as well. If you leave the [a1] argument empty or set it to TRUE, you will get the address in A1-style.
=ADDRESS(2,4)
=ADDRESS(2,4,4)
=ADDRESS(2,4,,TRUE)
=ADDRESS(2,4,4,1) //1 means TRUE, 0 means FALSE
R1C1-reference
R1C1 reference style works very well with relative references. Instead of coordinates like B5, R1C1 displays the relative position of referenced ranges. If you are using R1C1 reference style in your workbook, you need to set the [a1] argument as FALSE or 0.
=ADDRESS(2,4,,FALSE)
=ADDRESS(2,4,4,0) //1 means TRUE, 0 means FALSE
Using the Excel ADDRESS Function with sheet name
The last optional argument is [sheet_name]. Supply a text value to get a reference that contains the sheet name. If the argument is omitted, the reference returns without a sheet name.
Download Workbook
Tips
- Combine the Excel ADDRESS function with the INDIRECT function to create dynamic references. For example, the following formula targets a range which size is determined by the values in the cells A1, A2, A3 and A4.
INDIRECT(ADDRESS(A1,A2)&»:»&ADDRESS(A3,A4))
Содержание
- Выявление циклических связей
- Способ 1: кнопка на ленте
- Способ 2: стрелка трассировки
- Вопросы и ответы
Циклические ссылки представляют собой формулу, в которой одна ячейка через последовательность связей с другими ячейками, в конечном итоге ссылается сама на себя. В некоторых случаях пользователи осознано применяют подобный инструмент для вычислений. Например, такой подход может помочь при моделировании. Но, в большинстве случаев, данная ситуация – это просто ошибка в формуле, которую юзер допустил по невнимательности или по другим причинами. В связи с этим, чтобы удалить ошибку, следует сразу найти саму циклическую ссылку. Посмотрим, как это делается.
Выявление циклических связей
Если в книге присутствует циклическая ссылка, то уже при запуске файла программа в диалоговом окне предупредит об этом факте. Так что с определением самого наличия такой формулы проблем не возникнет. Как же найти проблемную область на листе?
Способ 1: кнопка на ленте
- Чтобы узнать, в каком именно диапазоне находится такая формула, прежде всего, жмем на кнопку в виде белого крестика в красном квадрате в диалоговом окне предупреждения, тем самым закрывая его.
- Переходим во вкладку «Формулы». На ленте в блоке инструментов «Зависимости формул» имеется кнопка «Проверка наличия ошибок». Кликаем на пиктограмму в виде перевернутого треугольника рядом с этой кнопкой. В появившемся меню выбираем пункт «Циклические ссылки». После перехода по этой надписи в виде меню показываются все координаты ссылок циклического характера в данной книге. При клике на координаты конкретной ячейки, она становится активной на листе.
- Путем изучения результата устанавливаем зависимость и устраняем причину цикличности, если она вызвана ошибкой.
- После выполнения необходимых действий снова переходим по кнопке проверки ошибок циклических ссылок. На этот раз соответствующий пункт меню должен быть вообще не активен.
Способ 2: стрелка трассировки
Существует и другой способ определения подобных нежелательных зависимостей.
- В диалоговом окне, сообщающем о наличии циклических ссылок, жмем на кнопку «OK».
- Появляется стрелка трассировки, которая указывает зависимости данных в одной ячейки от другой.
Нужно отметить, что второй способ более визуально нагляден, но в то же время не всегда даёт четкую картину цикличности, в отличие от первого варианта, особенно в сложных формулах.
Как видим, отыскать циклическую ссылку в Эксель довольно просто, особенно если знать алгоритм поиска. Можно воспользоваться одним из двух способов нахождения подобных зависимостей. Несколько сложнее определить, нужна ли данная формула в действительно или это просто ошибка, а также исправить ошибочную ссылку.
Еще статьи по данной теме: