Excel обратиться к ячейке по номеру

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 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше

В этой статье описаны синтаксис формулы и использование функции АДРЕС в Microsoft Excel. Чтобы узнать больше о работе с почтовыми адресами и создании почтовых наклеек, см. по ссылкам в разделе См. также.

Описание

Функцию АДРЕС можно использовать для получения адреса ячейки на листе по номерам строки и столбца. Например, функция АДРЕС(2;3) возвращает значение $C$2. Еще один пример: функция АДРЕС(77;300) возвращает значение $KN$77. Чтобы передать функции АДРЕС номера строки и столбца в качестве ее аргументов, можно использовать другие функции (например, функции СТРОКА и СТОЛБЕЦ).

Синтаксис

АДРЕС(номер_строки;номер_столбца;[тип_ссылки];[a1];[имя_листа])

Аргументы функции АДРЕС указаны ниже.

  • Номер_строки    Обязательный аргумент. Номер строки, используемый в ссылке на ячейку.

  • Номер_столбца    Обязательный аргумент. Номер столбца, используемый в ссылке на ячейку.

  • Тип_ссылки    Необязательный аргумент. Задает тип возвращаемой ссылки.

Тип_ссылки

Возвращаемый тип ссылки

1 или опущен

Абсолютный

2

Абсолютная строка; относительный столбец

3

Относительная строка; абсолютный столбец

4

Относительный

  • A1    Необязательный аргумент. Логическое значение, которое определяет тип ссылок: А1 или R1C1. При использовании ссылок типа А1 столбцы обозначаются буквами, а строки — цифрами. При использовании ссылок типа R1C1 и столбцы, и строки обозначаются цифрами. Если аргумент А1 имеет значение ИСТИНА или опущен, то функция АДРЕС возвращает ссылку типа А1; если этот аргумент имеет значение ЛОЖЬ, функция АДРЕС возвращает ссылку типа R1C1.

    Примечание: Чтобы изменить тип ссылок, используемый Microsoft Excel, откройте вкладку Файл, а затем нажмите кнопку Параметры и выберите пункт Формулы. В группе Работа с формулами установите или снимите флажок Стиль ссылок R1C1.

  • Имя_листа    Необязательный аргумент. Текстовое значение, определяющее имя листа, которое используется для формирования внешней ссылки. Например, формула =АДРЕС(1;1;;;»Лист2″) возвращает значение Лист2!$A$1. Если аргумент имя_листа отсутствует, имя листа не используется, и адрес, возвращаемый функцией, ссылается на ячейку текущего листа.

Пример

Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.

Формула

Описание

Результат

=АДРЕС(2;3)

Абсолютная ссылка

$C$2

=АДРЕС(2;3;2)

Абсолютная строка; относительный столбец

C$2

=АДРЕС(2;3;2;ЛОЖЬ)

Абсолютная строка; относительный столбец с типом ссылки R1C1

R2C[3]

=АДРЕС(2;3;1;ЛОЖЬ;»[Книга1]Лист1″)

Абсолютная ссылка на другую книгу и лист

‘[Книга1]Лист1’!R2C3

=АДРЕС(2;3;1;ЛОЖЬ;»ЛИСТ EXCEL»)

Абсолютная ссылка на другой лист

‘ЛИСТ EXCEL’!R2C3

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

 

Здравствуйте!

Казалось мне, что действие элементарное, но не смог решить.
Есть номер строки, номер столбца, получаем адрес ячейки. А, как получить значение ячейки с указанным адресом?
Т.е. я хочу в ячейке A2 получить значение ячейки в строке 4 столбце 7.
Нужна именно формула, не макрос.

Спасибо!

 

ts-79

Пользователь

Сообщений: 246
Регистрация: 15.02.2013

 

Z

Пользователь

Сообщений: 6111
Регистрация: 21.12.2012

Win 10, MSO 2013 SP1

Как вариант — «=ИНДЕКС($G$2:$G$8;B2;1)»

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

Необходимо если мы меняем значение номера строки или номера столбца, т.е. получив другой адрес ячейки, увидели значение другой ячейки.

 

Z

Пользователь

Сообщений: 6111
Регистрация: 21.12.2012

Win 10, MSO 2013 SP1

#5

31.01.2014 09:48:02

Цитата
Необходимо если мы меняем значение номера строки или номера столбца

Чтобы без угадай-ки —  покажите на примере диапазона 10х10 две ваших «хотелки» … ;)

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

Z,
А, если мы меняем номер столбца?…

Уточняю пример в файле:

Изменено: Андрей Корчагин31.01.2014 09:51:20

 

Можно использовать ИНДЕКС или ДВССЫЛ

 

wowick

Пользователь

Сообщений: 972
Регистрация: 14.01.2014

Вот такое получилось: правда тут доп ячейка задействована…

Изменено: wowick31.01.2014 09:57:06

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

 

Николай Павлов,
Спасибо Большое, помогло!
Спасибо за оперативность!

Изменено: Андрей Корчагин31.01.2014 10:01:12

 

Z

Пользователь

Сообщений: 6111
Регистрация: 21.12.2012

Win 10, MSO 2013 SP1

Нужна привязка в диапазону — у вас он 3х7… ;)
ps Запоздал — нет сбойнул.

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 
 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

Молчанов Андрей, не советую.
АДРЕС — текстовая, медленная.
ДВССЫЛ — мало того, что медленная, так еще и пересчитывается при каждом изменении на листе.

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

#13

16.01.2021 09:12:45

Цитата
vikttur написал:
мало того

если посмотреть с каких глубин поднялась тема и то что в #7 уже давалось и такое решение, то дебют Молчанов Андрей явно провалился.

в добавок к #7 известный вариант
=INDEX(1:1048576;B2;C2) ну или =INDEX(1:65536;B2;C2) для xls или =INDEX(1:32767;B2;C2) для 2003

По вопросам из тем форума, личку не читаю.

Функция АДРЕС возвращает адрес определенной ячейки (текстовое значение), на которую указывают номера столбца и строки. К примеру, в результате выполнения функции =АДРЕС(5;7) будет выведено значение $G$5.

Примечание: наличие символов «$» в адресе ячейки $G$5 свидетельствует о том, что ссылка на данную ячейку является абсолютной, то есть не меняется при копировании данных.

Функция АДРЕС в Excel: описание особенностей синтаксиса

Функция АДРЕС имеет следующую синтаксическую запись:

=АДРЕС(номер_строки;номер_столбца;[тип_ссылки];[a1];[имя_листа])

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

Описание аргументов:

  • Номер_строки – числовое значение, соответствующее номеру строки, в которой находится требуемая ячейка;
  • Номер_столбца – числовое значение, которое соответствует номеру столбца, в котором расположена искомая ячейка;
  • [тип_ссылки] – число из диапазона от 1 до 4, соответствующее одному из типов возвращаемой ссылки на ячейку:
  1. абсолютная на всю ячейку, например — $A$4
  2. абсолютная только на строку, например — A$4;
  3. абсолютная только на столбец, например — $A4;
  4. относительная на всю ячейку, например A4.
  • [a1] – логическое значение, определяющее один из двух типов ссылок: A1 либо R1C1;
  • [имя_листа] – текстовое значение, которое определяет имя листа в документе Excel. Используется для создания внешних ссылок.

Примечания:

  1. Ссылки типа R1C1 используются для цифрового обозначения столбцов и строк. Для возвращения ссылок такого типа в качестве параметра a1 должно быть явно указано логическое значение ЛОЖЬ или соответствующее числовое значение 0.
  2. Стиль ссылок в Excel может быть изменен путем установки/снятия флажка пункта меню «Стиль ссылок R1C1», который находится в «Файл – Параметры – Формулы – Работа с Формулами».
  3. Если требуется ссылка на ячейку, которая находится в другом листе данного документа Excel, полезно использовать параметр [имя_листа], который принимает текстовое значение, соответствующее названию требуемого листа, например «Лист7».



Примеры использования функции АДРЕС в Excel

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

На листе «Курсы» создана таблица с актуальными курсами валют:

Курсы.

На отдельном листе «Цены» создана таблица с товарами, отображающая стоимость в долларах США (USD):

Цены.

В ячейку D3 поместим ссылку на ячейку таблицы, находящейся на листе «Курсы», в которой содержится информация о курсе валюты USD. Для этого введем следующую формулу: =АДРЕС(3;2;1;1;»Курсы»).

валюты USD.

Значение параметров:

  • 3 – номер строки, в которой содержится искомая ячейка;
  • 2 – номер столбца с искомой ячейкой;
  • 1 – тип ссылки – абсолютная;
  • 1 – выбор стиля ссылок с буквенно-цифровой записью;
  • «Курсы» — название листа, на котором находится таблица с искомой ячейкой.

Для расчета стоимости в рублях используем формулу: =B3*ДВССЫЛ(D3).

расчет стоимости в рублях.

Функция ДВССЫЛ необходима для получения числового значения, хранимого в ячейке, на которую указывает ссылка. В результате вычислений для остальных товаров получим следующую таблицу:

ДВССЫЛ.

Как получить адрес ссылки на ячейку Excel?

Пример 2. В таблице содержатся данные о цене товаров, отсортированные в порядке возрастания стоимости. Необходимо получить ссылки на ячейки с минимальной и максимальной стоимостью товаров соответственно.

Исходная таблица имеет следующий вид:

Пример 2.

Для получения ссылки на ячейку с минимальной стоимостью товара используем формулу:

АДРЕС.

Функция АДРЕС принимает следующие параметры:

  • число, соответствующее номеру строки с минимальным значением цены (функция МИН выполняет поиск минимального значения и возвращает его, функция ПОИСКПОЗ находит позицию ячейки, содержащей минимальное значение цены. К полученному значению добавлено 2, поскольку ПОИСКПОЗ осуществляет поиск относительно диапазона выбранных ячеек.
  • 2 – номер столбца, в котором находится искомая ячейка.

Аналогичным способом получаем ссылку на ячейку с максимальной ценой товара. В результате получим:

получаем ссылку на ячейку.

Адрес по номерам строк и столбцов листа Excel в стиле R1C1

Пример 3. В таблице содержится ячейка, данные из которой используются в другом программном продукте. Для обеспечения совместимости необходимо предоставить ссылку на нее в виде R1C1.

Исходная таблица имеет следующий вид:

>Исходная таблица.

Для получения ссылки на ячейку B6 используем следующую формулу: =АДРЕС(6;2;1;0).

используем следующую формулу.

Аргументы функции:

  • 6 – номер строки искомой ячейки;
  • 2 – номер столбца, в котором содержится ячейка;
  • 1 – тип ссылки (абсолютная);
  • 0 – указание на стиль R1C1.

В результате получим ссылку:

R1C1.

Практическое применение функции АДРЕС: Поиск значения в диапазоне таблицы Excel по столбцам и строкам.

Примечание: при использовании стиля R1C1 запись абсолютной ссылки не содержит знака «$». Чтобы отличать абсолютные и относительные ссылки используются квадратные скобки «[]». Например, если в данном примере в качестве параметра тип_ссылки указать число 4, ссылка на ячейку примет следующий вид:

абсолютный тип ссылок по строкам и столбцам.

Скачать примеры функции АДРЕС для получения ссылки на ячейку в Excel

Так выглядит абсолютный тип ссылок по строкам и столбцам при использовании стиля R1C1.

Обращение к ячейке на листе Excel из кода VBA по адресу, индексу и имени. Чтение информации из ячейки. Очистка значения ячейки. Метод ClearContents объекта Range.

Обращение к ячейке по адресу

Допустим, у нас есть два открытых файла: «Книга1» и «Книга2», причем, файл «Книга1» активен и в нем находится исполняемый код VBA.

В общем случае при обращении к ячейке неактивной рабочей книги «Книга2» из кода файла «Книга1» прописывается полный путь:

Workbooks(«Книга2.xlsm»).Sheets(«Лист2»).Range(«C5»)

Workbooks(«Книга2.xlsm»).Sheets(«Лист2»).Cells(5, 3)

Workbooks(«Книга2.xlsm»).Sheets(«Лист2»).Cells(5, «C»)

Workbooks(«Книга2.xlsm»).Sheets(«Лист2»).[C5]

Удобнее обращаться к ячейке через свойство рабочего листа Cells(номер строки, номер столбца), так как вместо номеров строк и столбцов можно использовать переменные. Обратите внимание, что при обращении к любой рабочей книге, она должна быть открыта, иначе произойдет ошибка. Закрытую книгу перед обращением к ней необходимо открыть.

Теперь предположим, что у нас в активной книге «Книга1» активны «Лист1» и ячейка на нем «A1». Тогда обращение к ячейке «A1» можно записать следующим образом:

ActiveCell

Range(«A1»)

Cells(1, 1)

Cells(1, «A»)

[A1]

Точно также можно обращаться и к другим ячейкам активного рабочего листа, кроме обращения ActiveCell, так как активной может быть только одна ячейка, в нашем примере – это ячейка «A1».

Если мы обращаемся к ячейке на неактивном листе активной рабочей книги, тогда необходимо указать этот лист:

‘по основному имени листа

Лист2.Cells(2, 7)

‘по имени ярлыка

Sheets(«Имя ярлыка»).Cells(3, 8)

Имя ярлыка может совпадать с основным именем листа. Увидеть эти имена можно в окне редактора VBA в проводнике проекта. Без скобок отображается основное имя листа, в скобках – имя ярлыка.

Обращение к ячейке по индексу

К ячейке на рабочем листе можно обращаться по ее индексу (порядковому номеру), который считается по расположению ячейки на листе слева-направо и сверху-вниз.

Например, индекс ячеек в первой строке равен номеру столбца. Индекс ячеек во второй строке равен количеству ячеек в первой строке (которое равно общему количеству столбцов на листе, зависящему от версии Excel) плюс номер столбца. Индекс ячеек в третьей строке равен количеству ячеек в двух первых строках плюс номер столбца. И так далее.

Для примера, Cells(4) та же ячейка, что и Cells(1, 4). Используется такое обозначение редко, тем более, что у разных версий Excel может быть разным количество столбцов и строк на рабочем листе.

По индексу можно обращаться к ячейке не только на всем рабочем листе, но и в отдельном диапазоне. Нумерация ячеек осуществляется в пределах заданного диапазона по тому же правилу: слева-направо и сверху-вниз. Вот индексы ячеек диапазона Range(«A1:C3»):

Индексы ячеек в диапазоне Range("A1:C3")

Обращение к ячейке Range("A1:C3").Cells(5) соответствует выражению Range("B2").

Обращение к ячейке по имени

Если ячейке на рабочем листе Excel присвоено имя (Формулы –> Присвоить имя), то обращаться к ней можно по присвоенному имени.

Допустим одной из ячеек присвоено имя – «Итого», тогда обратиться к ней можно – Range("Итого").

Запись информации в ячейку

Содержание ячейки определяется ее свойством «Value», которое в VBA Excel является свойством по умолчанию и его можно явно не указывать. Записывается информация в ячейку при помощи оператора присваивания «=»:

Cells(2, 4).Value = 15

Cells(2, 4) = 15

Range(«A1») = «Этот текст записываем в ячейку»

ActiveCell = 28 + 10*36

Вместе с числами и текстом можно использовать переменные. Примеры здесь и ниже приведены для активного листа. Для неактивных листов дополнительно необходимо указывать имя листа, как в разделе «Обращение к ячейке».

Чтение информации из ячейки

Считать информацию из ячейки в переменную можно также при помощи оператора присваивания «=»:

Sub Test()

Dim a1 As Integer, a2 As Integer, a3 As Integer

Range(«A3») = 6

Cells(2, 5) = 15

a1 = Range(«A3»)

a2 = Cells(2, 5)

a3 = a1 * a2

MsgBox a3

End Sub

Точно также можно обмениваться информацией между ячейками:

Cells(2, 2) = Range(«A4»)

Очистка значения ячейки

Очищается ячейка от значения с помощью метода ClearContents. Кроме того, можно присвоить ячейке значение нуля. пустой строки или Empty:

Cells(10, 2).ClearContents

Range(«D23») = 0

ActiveCell = «»

Cells(5, «D») = Empty

Вчера в марафоне 30 функций Excel за 30 дней мы находили элементы массива при помощи функции MATCH (ПОИСКПОЗ) и обнаружили, что она отлично работает в команде с другими функциями, такими как VLOOKUP (ВПР) и INDEX (ИНДЕКС).

20-й день нашего марафона мы посвятим изучению функции ADDRESS (АДРЕС). Она возвращает адрес ячейки в текстовом формате, используя номер строки и столбца. Нужен ли нам этот адрес? Можно ли сделать то же самое с помощью других функций?

Давайте обратимся к сведениям по функции ADDRESS (АДРЕС) и изучим примеры работы с ней. Если у Вас есть дополнительная информация или примеры, пожалуйста, делитесь ими в комментариях.

Содержание

  1. Функция 20: ADDRESS (АДРЕС)
  2. Как можно использовать функцию ADDRESS (АДРЕС)?
  3. Синтаксис ADDRESS (АДРЕС)
  4. Ловушки ADDRESS (АДРЕС)
  5. Пример 1: Получаем адрес ячейки по номеру строки и столбца
  6. Абсолютная или относительная
  7. A1 или R1C1
  8. Название листа
  9. Пример 2: Находим значение ячейки, используя номер строки и столбца
  10. Пример 3: Возвращаем адрес ячейки с максимальным значением

Функция 20: ADDRESS (АДРЕС)

Функция ADDRESS (АДРЕС) возвращает ссылку на ячейку в виде текста, основываясь на номере строки и столбца. Она может возвращать абсолютный или относительный адрес в стиле ссылок A1 или R1C1. К тому же в результат может быть включено имя листа.

Функция АДРЕС в Excel

Как можно использовать функцию ADDRESS (АДРЕС)?

Функция ADDRESS (АДРЕС) может возвратить адрес ячейки или работать в сочетании с другими функциями, чтобы:

  • Получить адрес ячейки, зная номер строки и столбца.
  • Найти значение ячейки, зная номер строки и столбца.
  • Возвратить адрес ячейки с самым большим значением.

Синтаксис ADDRESS (АДРЕС)

Функция ADDRESS (АДРЕС) имеет вот такой синтаксис:

ADDRESS(row_num,column_num,[abs_num],[a1],[sheet_text])
АДРЕС(номер_строки;номер_столбца;[тип_ссылки];[а1];[имя_листа])

  • abs_num (тип_ссылки) – если равно 1 или вообще не указано, то функция возвратит абсолютный адрес ($A$1). Чтобы получить относительный адрес (A1), используйте значение 4. Остальные варианты: 2=A$1, 3=$A1.
  • a1 – если TRUE (ИСТИНА) или вообще не указано, функция возвращает ссылку в стиле A1, если FALSE (ЛОЖЬ), то в стиле R1C1.
  • sheet_text (имя_листа) – имя листа может быть указано, если Вы желаете видеть его в возвращаемом функцией результате.

Ловушки ADDRESS (АДРЕС)

Функция ADDRESS (АДРЕС) возвращает лишь адрес ячейки в виде текстовой строки. Если Вам нужно значение ячейки, используйте её в качестве аргумента функции INDIRECT (ДВССЫЛ) или примените одну из альтернативных формул, показанных в примере 2.

Пример 1: Получаем адрес ячейки по номеру строки и столбца

При помощи функции ADDRESS (АДРЕС) Вы можете получить адрес ячейки в виде текста, используя номер строки и столбца. Если Вы введёте только эти два аргумента, результатом будет абсолютный адрес, записанный в стиле ссылок A1.

=ADDRESS($C$2,$C$3)
=АДРЕС($C$2;$C$3)

Функция АДРЕС в Excel

Абсолютная или относительная

Если не указывать значение аргумента abs_num (тип_ссылки) в формуле, то результатом будет абсолютная ссылка.

Чтобы увидеть адрес в виде относительной ссылки, можно подставить в качестве аргумента abs_num (тип_ссылки) значение 4.

=ADDRESS($C$2,$C$3,4)
=АДРЕС($C$2;$C$3;4)

Функция АДРЕС в Excel

A1 или R1C1

Чтобы задать стиль ссылок R1C1, вместо принятого по умолчанию стиля A1, Вы должны указать значение FALSE (ЛОЖЬ) для аргумента а1.

=ADDRESS($C$2,$C$3,1,FALSE)
=АДРЕС($C$2;$C$3;1;ЛОЖЬ)

Функция АДРЕС в Excel

Название листа

Последний аргумент – это имя листа. Если Вам необходимо это имя в полученном результате, укажите его в качестве аргумента sheet_text (имя_листа).

=ADDRESS($C$2,$C$3,1,TRUE,"Ex02")
=АДРЕС($C$2;$C$3;1;ИСТИНА;"Ex02")

Функция АДРЕС в Excel

Пример 2: Находим значение ячейки, используя номер строки и столбца

Функция ADDRESS (АДРЕС) возвращает адрес ячейки в виде текста, а не как действующую ссылку. Если Вам нужно получить значение ячейки, можно использовать результат, возвращаемый функцией ADDRESS (АДРЕС), как аргумент для INDIRECT (ДВССЫЛ). Мы изучим функцию INDIRECT (ДВССЫЛ) позже в рамках марафона 30 функций Excel за 30 дней.

=INDIRECT(ADDRESS(C2,C3))
=ДВССЫЛ(АДРЕС(C2;C3))

Функция АДРЕС в Excel

Функция INDIRECT (ДВССЫЛ) может работать и без функции ADDRESS (АДРЕС). Вот как можно, используя оператор конкатенации «&«, слепить нужный адрес в стиле R1C1 и в результате получить значение ячейки:

=INDIRECT("R"&C2&"C"&C3,FALSE)
=ДВССЫЛ("R"&C2&"C"&C3;ЛОЖЬ)

Функция АДРЕС в Excel

Функция INDEX (ИНДЕКС) также может вернуть значение ячейки, если указан номер строки и столбца:

=INDEX(1:5000,C2,C3)
=ИНДЕКС(1:5000;C2;C3)

Функция АДРЕС в Excel

1:5000 – это первые 5000 строк листа Excel.

Пример 3: Возвращаем адрес ячейки с максимальным значением

В этом примере мы найдём ячейку с максимальным значением и используем функцию ADDRESS (АДРЕС), чтобы получить её адрес.

Функция MAX (МАКС) находит максимальное число в столбце C.

=MAX(C3:C8)
=МАКС(C3:C8)

Функция АДРЕС в Excel

Далее в игру вступает функция ADDRESS (АДРЕС) в сочетании с MATCH (ПОИСКПОЗ), которая находит номер строки, и COLUMN (СТОЛБЕЦ), которая определяет номер столбца.

=ADDRESS(MATCH(F3,C:C,0),COLUMN(C2))
=АДРЕС(ПОИСКПОЗ(F3;C:C;0);СТОЛБЕЦ(C2))

Функция АДРЕС в Excel

Оцените качество статьи. Нам важно ваше мнение:

Понравилась статья? Поделить с друзьями:
  • Excel обратиться к ячейке в другом файле
  • Excel обратиться в ячейку другого файла
  • Excel образцы таблиц с данными
  • Excel образец для продажи
  • Excel обработка текстовых ячеек