Используя Microsoft Excel, вы можете легко получить местоположение выбранной в данный момент ячейки в поле имени, которое отображается слева от панели формул. Но если ячейка названа, вы не можете проверить ее местоположение на основе отображения в поле имени. И если вы хотите напрямую показать полный адрес активной ячейки или отобразить адрес активной ячейки в указанной ячейке, что бы вы сделали? В этом руководстве мы покажем вам, как легко получить адрес активной ячейки с помощью формул и методов VBA.
Получить адрес активной ячейки с формулой
Получить адрес активной ячейки с кодом VBA
Отображение адреса активной ячейки в указанной ячейке с кодом VBA
Динамически отображать адрес активной ячейки с помощью удивительного инструмента
Получить адрес активной ячейки с формулой
В этом разделе мы предоставим вам формулу легкого получения адреса активной ячейки.
1. Выберите ячейку, чтобы сделать ее активной.
2. Введите в нее приведенную ниже формулу и нажмите Enter .
=ADDRESS(ROW(),COLUMN())
Затем вы можете увидеть, что адрес текущей выбранной ячейки сразу отображается в ячейке.
Внимание: Если вы выберете другую ячейку, адрес не изменится автоматически. Чтобы получить динамический адрес при выборе разных ячеек, примените следующие методы.
Получить адрес активной ячейки с кодом VBA
Вы также можете получить адрес активной ячейки с кодом VBA. Пожалуйста, сделайте следующее.
1. нажмите другой + F11 одновременно открыть Microsoft Visual Basic для приложений окно.
2. в Microsoft Visual Basic для приложений дважды щелкните имя текущего рабочего листа на левой панели, чтобы открыть редактор кода, затем скопируйте и вставьте приведенный ниже код VBA в редактор кода.
Код VBA: получить адрес активной ячейки
Sub selectRange()
MsgBox ActiveCell.Address
End Sub
3. Затем нажмите Run кнопку для запуска кода.
4. Затем появится диалоговое окно с адресом активной ячейки, указанным внутри.
Отображение адреса активной ячейки в указанной ячейке с кодом VBA
В другой ситуации вы хотите, чтобы адрес активной ячейки отображался в указанной ячейке. Каждый раз, когда вы переходите из одной ячейки в другую, адрес ячейки будет автоматически изменяться и отображаться в указанной ячейке. Пожалуйста, сделайте следующее.
1. Откройте Microsoft Visual Basic для приложений окно, нажав другой + F11 одновременно.
2. Дважды щелкните имя листа на левой панели, чтобы открыть редактор кода, затем скопируйте и вставьте в него приведенный ниже код.
Код VBA: отображать адрес активной ячейки в указанной ячейке
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("A1").Value = ActiveCell.Address
End Sub
Внимание: A1 — это ячейка, в которую вы хотите поместить адрес активной ячейки, вы можете изменить его на указанную ячейку для своих нужд.
3. Затем нажмите Файл > Закройте и вернитесь в Microsoft Excel Для выхода из Microsoft Visual Basic для приложений окно.
Вы можете видеть, что адрес активной ячейки отображается в ячейке A1, и адрес будет изменяться автоматически в зависимости от изменения активной ячейки. Смотрите скриншот:
Динамически отображать адрес активной ячейки с помощью удивительного инструмента
Если вы хотите динамически отображать адрес активной ячейки на листе, я настоятельно рекомендую Расширенная панель редактирования инструмент Kutools for Excel. Давайте посмотрим, как этот инструмент может динамически отображать адрес активной ячейки на листе.
1. Нажмите Кутулс > Показать спрятать > Расширенная панель редактирования для включения функции.
С этого момента каждый раз, когда вы щелкаете ячейку, появляется окно расширенной панели редактирования. И адрес активной ячейки будет отображаться в нижней части окна.
Tips: Вы можете просматривать и редактировать содержимое ячейки прямо в окне.
Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Содержание
- Excel имя текущей ячейки
- АДРЕС (функция АДРЕС)
- Описание
- Синтаксис
- Пример
- Извлечение информации о ячейке функцией ЯЧЕЙКА (CELL)
- Ссылка Excel На Текущую Ячейку
- 11 ответов:
- создайте именованную формулу с именем THIS_CELL
- используйте формулу на листе точно так, как вы хотели
- Примеры функции АДРЕС для получения адреса ячейки листа Excel
- Функция АДРЕС в Excel: описание особенностей синтаксиса
- Примеры использования функции АДРЕС в Excel
- Как получить адрес ссылки на ячейку Excel?
- Адрес по номерам строк и столбцов листа Excel в стиле R1C1
Excel имя текущей ячейки
Коротко о разделе:
Здесь разрешается создавать темы, относящиеся к любому языку программирования, для которого не существует раздела на форуме (например, Lisp, Tcl/Tk, FORTRAN и т.д.). Если раздел для нужного Вам языка есть, большая просьба создавать тему в нем.
Вопросы, связанные с JScript, Perl, PHP обсуждаются в разделе WWW Masters.
Обратите внимание:
1. Прежде чем задать вопрос, воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали.
2. Если Ваш вопрос связан с конкретным языком программирования, обязательно укажите название языка в имени темы.
3. Постарайтесь давать темам информативные названия. Темы с названиями типа «Помогите, горю» будут удалены.
4. Помните, чем грамотней будет задан Ваш вопрос, тем больше будет у Вас шансов получить на него ответ. Как правильно задавать вопросы
5. Ипользуйте тег [ code ] . текст программы. [ /code ] для выделения текста программы.
Просьбы выполнить какую-либо работу за автора в этом разделе не обсуждаются. Темы с подобными просьбами будут перемещены или удалены. Для заказов у нас существуют специальные разделы: Разовые заказы и подработка, ПОМОЩЬ СТУДЕНТАМ.
Если кто не понял (а такие есть) — чтобы за вас решали ваши задачки, идите на другие ресурсы.
Полезные ссылки:
Есть.
Наши Исходники | GPSS (en), GPSS (ru) (!) | Common Lisp | Tcl/Tk | Haskell | Lua
Источник
АДРЕС (функция АДРЕС)
В этой статье описаны синтаксис формулы и использование функции АДРЕС в Microsoft Excel. Чтобы узнать больше о работе с почтовыми адресами и создании почтовых наклеек, см. по ссылкам в разделе См. также.
Описание
Функцию АДРЕС можно использовать для получения адреса ячейки на листе по номерам строки и столбца. Например, функция АДРЕС( 2;3) возвращает значение $C$2. Еще один пример: функция АДРЕС( 77;300) возвращает значение $KN$77. Чтобы передать функции АДРЕС номера строки и столбца в качестве ее аргументов, можно использовать другие функции (например, функции СТРОКА и СТОЛБЕЦ).
Синтаксис
Аргументы функции АДРЕС указаны ниже.
Номер_строки Обязательный аргумент. Номер строки, используемый в ссылке на ячейку.
Номер_столбца Обязательный аргумент. Номер столбца, используемый в ссылке на ячейку.
Тип_ссылки Необязательный аргумент. Задает тип возвращаемой ссылки.
Возвращаемый тип ссылки
Абсолютная строка; относительный столбец
Относительная строка; абсолютный столбец
A1 Необязательный аргумент. Логическое значение, которое определяет тип ссылок: А1 или R1C1. При использовании ссылок типа А1 столбцы обозначаются буквами, а строки — цифрами. При использовании ссылок типа R1C1 и столбцы, и строки обозначаются цифрами. Если аргумент А1 имеет значение ИСТИНА или опущен, то функция АДРЕС возвращает ссылку типа А1; если этот аргумент имеет значение ЛОЖЬ, функция АДРЕС возвращает ссылку типа R1C1.
Примечание: Чтобы изменить тип ссылок, используемый Microsoft Excel, откройте вкладку Файл, а затем нажмите кнопку Параметры и выберите пункт Формулы. В группе Работа с формулами установите или снимите флажок Стиль ссылок R1C1.
Имя_листа Необязательный аргумент. Текстовое значение, определяющее имя листа, которое используется для формирования внешней ссылки. Например, формула = АДРЕС( 1;1;;;»Лист2″) возвращает значение Лист2!$A$1. Если аргумент имя_листа отсутствует, имя листа не используется, и адрес, возвращаемый функцией, ссылается на ячейку текущего листа.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Источник
Извлечение информации о ячейке функцией ЯЧЕЙКА (CELL)
Иногда бывает необходимо с помощью формул узнать о какой-либо ячейке подробную информацию и параметры, чтобы использовать это в расчетах. Например, выяснить число или текст в ячейке или какой числовой формат в ней установлен. Сделать это можно, используя функцию ЯЧЕЙКА (CELL) .
Синтаксис у функции следующий:
=ЯЧЕЙКА( Параметр ; Адрес )
где Адрес — это, понятное дело, ссылка на нужную ячейку, а вот Параметр — это кодовое слово, определяющее какую именно информацию о ячейке мы хотим получить. У этого аргумента несколько возможных значений:

Давайте рассмотрим пару трюков с применением этой функции на практике.
Например, можно получить имя текущего листа формулой, используя функцию ЯЧЕЙКА с параметром «имяфайла» и извлекающей все символы правее закрывающей квадратной скобки:
Также можно проверить тип данных в ячейке (параметр «тип») и выводить сообщение об ошибке вместо вычислений, если введен текст или ячейка пуста:

Или подсветить условным форматированием все незащищенные ячейки в заданном диапазоне:
Источник
Ссылка Excel На Текущую Ячейку
Как получить ссылку на текущую ячейку?
например, если я хочу отобразить ширину столбца A, я мог бы использовать следующее:
однако, я хочу, чтобы формула была примерно такой:
11 ответов:
создайте именованную формулу с именем THIS_CELL
- в текущем листе выберите ячейку A1 (это важно!)
- открыть Name Manager (Ctl+F3)
- клик New.
- введите » THIS_CELL «(или просто «это», что является моим предпочтением) в Name:
введите следующую формулу в Refers to:
Примечание: убедитесь, что ячейка A1 выбрана. Эта формула является относительно активной ячейки.
под Scope: выберите Workbook .
используйте формулу на листе точно так, как вы хотели
EDIT: лучшее решение, чем использование INDIRECT()
стоит отметить, что решение, которое я дал, должно быть предпочтительнее любого решения с использованием @и imix это ниже для вариации этой идеи (с использованием ссылок на стиль RC). В этом случае вы можете использовать =!RC на THIS_CELL именованная формула диапазона, или просто использовать RC напрямую.
просто для полноты картины хочу дать еще один ответ:
во-первых, перейти к Excel-Options ->Формулы и включения ссылки R1C1. Тогда используйте
RC всегда ссылается на текущую строку, текущий столбец, т. е.»эта ячейка».
решение Рика Тичи это в основном настройка, чтобы сделать то же самое возможно в A1 эталонный стиль (см. также GSerg это!—18—> к ответу и записке Джоуи комментарии на ответ Патрика Макдональда).
=ADDRESS(ROW(),COLUMN(),4) даст нам относительный адрес текущей ячейки. =INDIRECT(ADDRESS(ROW(),COLUMN()-1,4)) даст нам содержимое ячейки слева от текущей ячейки =INDIRECT(ADDRESS(ROW()-1,COLUMN(),4)) даст нам содержимое ячейки над текущей ячейкой (отлично подходит для расчета текущих итогов)
используя CELL () функция возвращает информацию о последней измененной ячейке. Итак, если мы введем новую строку или столбец CELL () ссылка будет затронута и не будет никакой текущей ячейки длиннее.
A2 уже является относительной ссылкой и изменится при перемещении ячейки или копировании формулы.
внутри таблицы вы можете использовать [@] , который (к сожалению) Excel автоматически расширяет до Table1[@] но это действительно работает. (Я использую Excel 2010)
например, при наличии двух столбцов [Change] и [Balance] , поставив в
Я нашел лучший способ справиться с этим (для меня) использовать следующее:
надеюсь, что это помогает.
есть лучший способ, который является более безопасным и не замедлит ваше приложение. Как Excel настроен, ячейка может иметь либо значение, либо формулу; формула не может ссылаться на свою собственную ячейку. Вы в конечном итоге с бесконечным циклом, так как новое значение приведет к другому вычислению. . Используйте вспомогательный столбец для вычисления значения на основе того, что вы помещаете в другую ячейку. Например:
столбец A является истинным или ложным, столбец B содержит денежное значение, столбец C содержит следующее формула: =B1
теперь, чтобы вычислить, что столбец B будет выделен желтым цветом в условном формате, только если столбец A истинен, а столбец B больше нуля.
затем вы можете скрыть столбец C
EDIT: следующее неверно, потому что ячейка («ширина») возвращает ширину последние изменения клеток.
Источник
Примеры функции АДРЕС для получения адреса ячейки листа Excel
Функция АДРЕС возвращает адрес определенной ячейки (текстовое значение), на которую указывают номера столбца и строки. К примеру, в результате выполнения функции =АДРЕС(5;7) будет выведено значение $G$5.
Примечание: наличие символов «$» в адресе ячейки $G$5 свидетельствует о том, что ссылка на данную ячейку является абсолютной, то есть не меняется при копировании данных.
Функция АДРЕС в Excel: описание особенностей синтаксиса
Функция АДРЕС имеет следующую синтаксическую запись:
Первые два аргумента данной функции являются обязательными для заполнения.
- Номер_строки – числовое значение, соответствующее номеру строки, в которой находится требуемая ячейка;
- Номер_столбца – числовое значение, которое соответствует номеру столбца, в котором расположена искомая ячейка;
- [тип_ссылки] – число из диапазона от 1 до 4, соответствующее одному из типов возвращаемой ссылки на ячейку:
- абсолютная на всю ячейку, например — $A$4
- абсолютная только на строку, например — A$4;
- абсолютная только на столбец, например — $A4;
- относительная на всю ячейку, например A4.
- [a1] – логическое значение, определяющее один из двух типов ссылок: A1 либо R1C1;
- [имя_листа] – текстовое значение, которое определяет имя листа в документе Excel. Используется для создания внешних ссылок.
- Ссылки типа R1C1 используются для цифрового обозначения столбцов и строк. Для возвращения ссылок такого типа в качестве параметра a1 должно быть явно указано логическое значение ЛОЖЬ или соответствующее числовое значение 0.
- Стиль ссылок в Excel может быть изменен путем установки/снятия флажка пункта меню «Стиль ссылок R1C1», который находится в «Файл – Параметры – Формулы – Работа с Формулами».
- Если требуется ссылка на ячейку, которая находится в другом листе данного документа Excel, полезно использовать параметр [имя_листа], который принимает текстовое значение, соответствующее названию требуемого листа, например «Лист7».
Примеры использования функции АДРЕС в Excel
Пример 1. В таблице Excel содержится ячейка, отображающая динамически изменяемые данные в зависимости от определенных условий. Для работы с актуальными данными в таблице, которая находится на другом листе документа требуется получить ссылку на данную ячейку.
На листе «Курсы» создана таблица с актуальными курсами валют:
На отдельном листе «Цены» создана таблица с товарами, отображающая стоимость в долларах США (USD):
В ячейку D3 поместим ссылку на ячейку таблицы, находящейся на листе «Курсы», в которой содержится информация о курсе валюты USD. Для этого введем следующую формулу: =АДРЕС(3;2;1;1;»Курсы»).
- 3 – номер строки, в которой содержится искомая ячейка;
- 2 – номер столбца с искомой ячейкой;
- 1 – тип ссылки – абсолютная;
- 1 – выбор стиля ссылок с буквенно-цифровой записью;
- «Курсы» — название листа, на котором находится таблица с искомой ячейкой.
Для расчета стоимости в рублях используем формулу: =B3*ДВССЫЛ(D3).
Функция ДВССЫЛ необходима для получения числового значения, хранимого в ячейке, на которую указывает ссылка. В результате вычислений для остальных товаров получим следующую таблицу:
Как получить адрес ссылки на ячейку Excel?
Пример 2. В таблице содержатся данные о цене товаров, отсортированные в порядке возрастания стоимости. Необходимо получить ссылки на ячейки с минимальной и максимальной стоимостью товаров соответственно.
Исходная таблица имеет следующий вид:
Для получения ссылки на ячейку с минимальной стоимостью товара используем формулу:
Функция АДРЕС принимает следующие параметры:
- число, соответствующее номеру строки с минимальным значением цены (функция МИН выполняет поиск минимального значения и возвращает его, функция ПОИСКПОЗ находит позицию ячейки, содержащей минимальное значение цены. К полученному значению добавлено 2, поскольку ПОИСКПОЗ осуществляет поиск относительно диапазона выбранных ячеек.
- 2 – номер столбца, в котором находится искомая ячейка.
Аналогичным способом получаем ссылку на ячейку с максимальной ценой товара. В результате получим:
Адрес по номерам строк и столбцов листа Excel в стиле R1C1
Пример 3. В таблице содержится ячейка, данные из которой используются в другом программном продукте. Для обеспечения совместимости необходимо предоставить ссылку на нее в виде R1C1.
Исходная таблица имеет следующий вид:
Исходная таблица.» src=»https://exceltable.com/funkcii-excel/images/funkcii-excel78-9.png» >
Для получения ссылки на ячейку B6 используем следующую формулу: =АДРЕС(6;2;1;0).
- 6 – номер строки искомой ячейки;
- 2 – номер столбца, в котором содержится ячейка;
- 1 – тип ссылки (абсолютная);
- 0 – указание на стиль R1C1.
В результате получим ссылку:
Примечание: при использовании стиля R1C1 запись абсолютной ссылки не содержит знака «$». Чтобы отличать абсолютные и относительные ссылки используются квадратные скобки «[]». Например, если в данном примере в качестве параметра тип_ссылки указать число 4, ссылка на ячейку примет следующий вид:
Так выглядит абсолютный тип ссылок по строкам и столбцам при использовании стиля R1C1.
Источник
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 |
Нужна дополнительная помощь?
How do I obtain a reference to the current cell?
For example, if I want to display the width of column A, I could use the following:
=CELL("width", A2)
However, I want the formula to be something like this:
=CELL("width", THIS_CELL)
asked Apr 16, 2009 at 18:21
StevenSteven
13.4k27 gold badges101 silver badges146 bronze badges
Several years too late:
Just for completeness I want to give yet another answer:
First, go to Excel-Options -> Formulas and enable R1C1 references. Then use
=CELL("width", RC)
RC always refers the current Row, current Column, i.e. «this cell».
Rick Teachey’s solution is basically a tweak to make the same possible in A1 reference style (see also GSerg’s comment to Joey’s answer and note his comment to Patrick McDonald’s answer).
Cheers

answered Aug 13, 2014 at 16:38
imiximix
1,13010 silver badges13 bronze badges
5
Create a named formula called THIS_CELL
-
In the current worksheet, select cell A1 (this is important!)
-
Open
Name Manager(Ctl+F3) -
Click
New... -
Enter «THIS_CELL» (or just «THIS», which is my preference) into
Name: -
Enter the following formula into
Refers to:=!A1NOTE: Be sure cell A1 is selected. This formula is relative to the ActiveCell.
-
Under
Scope:selectWorkbook. -
Click
OKand close theName Manager
Use the formula in the worksheet exactly as you wanted
=CELL("width",THIS_CELL)
EDIT: Better solution than using INDIRECT()
It’s worth noting that the solution I’ve given should be preferred over any solution using the INDIRECT() function for two reasons:
- It is nonvolatile, while
INDIRECT()is a volatile Excel function, and as a result will dramatically slow down workbook calculation when it is used a lot. - It is much simpler, and does not require converting an address (in the form of
ROW()COLUMN()) to a range reference to an address and back to a range reference again.
EDIT: Also see this question for more information on workbook-scoped, sheet dependent named ranges.
EDIT: Also see @imix’s answer below for a variation on this idea (using RC style references). In that case, you could use =!RC for the THIS_CELL named range formula, or just use RC directly.
answered Mar 8, 2014 at 2:54
RickRick
42.1k15 gold badges70 silver badges116 bronze badges
5
You could use
=CELL("width", INDIRECT(ADDRESS(ROW(), COLUMN())))
Lance Roberts
22.2k32 gold badges112 silver badges129 bronze badges
answered Apr 16, 2009 at 18:27
Patrick McDonaldPatrick McDonald
63.7k14 gold badges106 silver badges118 bronze badges
4
=ADDRESS(ROW(),COLUMN(),4) will give us the relative address of the current cell.
=INDIRECT(ADDRESS(ROW(),COLUMN()-1,4)) will give us the contents of the cell left of the current cell
=INDIRECT(ADDRESS(ROW()-1,COLUMN(),4)) will give us the contents of the cell above the current cell (great for calculating running totals)
Using CELL() function returns information about the last cell that was changed. So, if we enter a new row or column the CELL() reference will be affected and will not be the current cell’s any longer.
Code Lღver
15.5k16 gold badges56 silver badges75 bronze badges
answered Apr 11, 2012 at 11:43
andyandy
3293 silver badges2 bronze badges
1
A2 is already a relative reference and will change when you move the cell or copy the formula.
answered Apr 16, 2009 at 18:23
JoeyJoey
341k85 gold badges687 silver badges681 bronze badges
2
=ADDRESS(ROW(),COLUMN())
=ADDRESS(ROW(),COLUMN(),1)
=ADDRESS(ROW(),COLUMN(),2)
=ADDRESS(ROW(),COLUMN(),3)
=ADDRESS(ROW(),COLUMN(),4)
answered Dec 28, 2013 at 14:22
Without INDIRECT(): =CELL("width", OFFSET($A$1,ROW()-1,COLUMN()-1) )
answered Jul 2, 2014 at 14:01
Cosmin RusCosmin Rus
3242 silver badges7 bronze badges
I found the best way to handle this (for me) is to use the following:
Dim MyString as String
MyString = Application.ThisCell.Address
Range(MyString).Select
Hope this helps.
answered Jun 28, 2013 at 16:11
Inside tables you can use [@] which (unfortunately) Excel automatically expands to Table1[@] but it does work. (I’m using Excel 2010)
For example when having two columns [Change] and [Balance], putting this in the [Balance] column:
=OFFSET([@], -1, 0) + [Change]
Note of course that this depends on the order of the rows (just like most any other solution), so it’s a bit fragile.
answered Dec 19, 2011 at 21:38
JannesJannes
1,7601 gold badge17 silver badges20 bronze badges
0
There is a better way that is safer and will not slow down your application. How Excel is set up, a cell can have either a value or a formula; the formula can not refer to its own cell. You end up with an infinite loop, since the new value would cause another calculation… . Use a helper column to calculate the value based on what you put in the other cell. For Example:
Column A is a True or False, Column B contains a monetary value, Column C contains the folowing formula:
=B1
Now, to calculate that column B will be highlighted yellow in a conditional format only if Column A is True and Column B is greater than Zero…
=AND(A1=True,C1>0)
You can then choose to hide column C
answered Jun 27, 2014 at 19:31
EsterEster
291 silver badge11 bronze badges
Full credit to the top answer by @rick-teachey, but you can extend that approach to work with Conditional Formatting. So that this answer is complete, I will duplicate Rick’s answer in summary form and then extend it:
- Select cell
A1in any worksheet. - Create a Named Range called
THISand set theRefers to:to=!A1.
Attempting to use THIS in Conditional Formatting formulas will result in the error:
You may not use references to other workbooks for Conditional Formatting criteria
If you want THIS to work in Conditional Formatting formulas:
- Create another Named Range called
THIS_CFand set theRefers to:to=THIS.
You can now use THIS_CF to refer to the current cell in Conditional Formatting formulas.
You can also use this approach to create other relative Named Ranges, such as THIS_COLUMN, THIS_ROW, ROW_ABOVE, COLUMN_LEFT, etc.
answered Nov 20, 2019 at 18:06
EDIT: the following is wrong, because Cell(«width») returns the width of the last modified cell.
Cell("width") returns the width of the current cell, so you don’t need a reference to the current cell. If you need one, though, cell("address") returns the address of the current cell, so if you need a reference to the current cell, use indirect(cell("address")). See the documentation: http://www.techonthenet.com/excel/formulas/cell.php
answered Sep 15, 2011 at 14:40
MyerMyer
3,6421 gold badge40 silver badges50 bronze badges
Reference to a cell that include this formula (self reference):
address(row();column())
E.g. getting the value of the cell above:
indirect(address(row()-1;column()))
Or what the OP asked:
=Cell(width;address(row();column()))
answered Jul 12, 2021 at 16:13
Иногда бывает необходимо с помощью формул узнать о какой-либо ячейке подробную информацию и параметры, чтобы использовать это в расчетах. Например, выяснить число или текст в ячейке или какой числовой формат в ней установлен. Сделать это можно, используя функцию ЯЧЕЙКА (CELL).
Синтаксис у функции следующий:
=ЯЧЕЙКА(Параметр; Адрес)
где Адрес — это, понятное дело, ссылка на нужную ячейку, а вот Параметр — это кодовое слово, определяющее какую именно информацию о ячейке мы хотим получить. У этого аргумента несколько возможных значений:

Давайте рассмотрим пару трюков с применением этой функции на практике.
Например, можно получить имя текущего листа формулой, используя функцию ЯЧЕЙКА с параметром «имяфайла» и извлекающей все символы правее закрывающей квадратной скобки:
Также можно проверить тип данных в ячейке (параметр «тип») и выводить сообщение об ошибке вместо вычислений, если введен текст или ячейка пуста:

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

Ссылки по теме
- Включение / выключение подсветки незащищенных ячеек макросом
- Условное форматирование в Excel























