Работа с активной ячейкой
Свойство ActiveCell возвращает объект Range, представляющий активную ячейку. К активной ячейке можно применить любое свойство или метод объекта Range, как показано в следующем примере. Хотя можно выделить одну или несколько ячеек листа, в выделенном фрагменте только к одной ячейке можно применить свойство ActiveCell.
Примечание. С активной ячейкой можно работать только в том случае, если лист, на котором она находится, является активным листом.
Перемещение активной ячейки
Примечание. Чтобы выбрать диапазон ячеек, используйте метод Select. Чтобы сделать одну ячейку активной, используйте метод Activate.
Для перемещения активной ячейки можно использовать свойство Offset. Следующая процедура вставляет текст в активную ячейку в выбранном диапазоне, а затем перемещает активную ячейку вправо на одну ячейку, не изменяя выделенный фрагмент.
Выделение ячеек вокруг активной ячейки
Свойство CurrentRegion возвращает диапазон или «остров» ячеек, ограниченный пустыми строками и столбцами. В следующем примере выделенный фрагмент расширяется для включения ячеек, содержащих данные, непосредственно примыкающие к активной ячейке. Затем этот диапазон форматируется с использованием денежного стиля.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Ссылка Excel На Текущую Ячейку
Как получить ссылку на текущую ячейку?
например, если я хочу отобразить ширину столбца A, я мог бы использовать следующее:
однако, я хочу, чтобы формула была примерно такой:
11 ответов:
создайте именованную формулу с именем THIS_CELL
введите следующую формулу в Refers to:
Примечание: убедитесь, что ячейка A1 выбрана. Эта формула является относительно активной ячейки.
используйте формулу на листе точно так, как вы хотели
EDIT: лучшее решение, чем использование INDIRECT()
стоит отметить, что решение, которое я дал, должно быть предпочтительнее любого решения с использованием по двум причинам:
EDIT: см. Также этот вопрос для получения дополнительной информации о область действия книги, зависящие от листа именованные диапазоны.
EDIT: см. Также @и imix это ниже для вариации этой идеи (с использованием ссылок на стиль RC). В этом случае вы можете использовать =!RC на THIS_CELL именованная формула диапазона, или просто использовать RC напрямую.
просто для полноты картины хочу дать еще один ответ:
RC всегда ссылается на текущую строку, текущий столбец, т. е.»эта ячейка».
решение Рика Тичи это в основном настройка, чтобы сделать то же самое возможно в A1 эталонный стиль (см. также GSerg это!—18—> к ответу и записке Джоуи комментарии на ответ Патрика Макдональда).
=ADDRESS(ROW(),COLUMN(),4) даст нам относительный адрес текущей ячейки. =INDIRECT(ADDRESS(ROW(),COLUMN()-1,4)) даст нам содержимое ячейки слева от текущей ячейки =INDIRECT(ADDRESS(ROW()-1,COLUMN(),4)) даст нам содержимое ячейки над текущей ячейкой (отлично подходит для расчета текущих итогов)
используя CELL () функция возвращает информацию о последней измененной ячейке. Итак, если мы введем новую строку или столбец CELL () ссылка будет затронута и не будет никакой текущей ячейки длиннее.
A2 уже является относительной ссылкой и изменится при перемещении ячейки или копировании формулы.
АДРЕС (функция АДРЕС)
В этой статье описаны синтаксис формулы и использование функции АДРЕС в Microsoft Excel. Чтобы узнать больше о работе с почтовыми адресами и создании почтовых наклеек, см. по ссылкам в разделе См. также.
Описание
Синтаксис
Аргументы функции АДРЕС указаны ниже.
Номер_строки Обязательный аргумент. Номер строки, используемый в ссылке на ячейку.
Номер_столбца Обязательный аргумент. Номер столбца, используемый в ссылке на ячейку.
Тип_ссылки Необязательный аргумент. Задает тип возвращаемой ссылки.
Возвращаемый тип ссылки
Абсолютная строка; относительный столбец
Относительная строка; абсолютный столбец
A1 Необязательный аргумент. Логическое значение, которое определяет тип ссылок: А1 или R1C1. При использовании ссылок типа А1 столбцы обозначаются буквами, а строки — цифрами. При использовании ссылок типа R1C1 и столбцы, и строки обозначаются цифрами. Если аргумент А1 имеет значение ИСТИНА или опущен, то функция АДРЕС возвращает ссылку типа А1; если этот аргумент имеет значение ЛОЖЬ, функция АДРЕС возвращает ссылку типа R1C1.
Примечание: Чтобы изменить тип ссылок, используемый Microsoft Excel, откройте вкладку Файл, а затем нажмите кнопку Параметры и выберите пункт Формулы. В группе Работа с формулами установите или снимите флажок Стиль ссылок R1C1.
Имя_листа Необязательный аргумент. Текстовое значение, определяющее имя листа, которое используется для формирования внешней ссылки. Например, формула = АДРЕС( 1;1;;;»Лист2″) возвращает значение Лист2!$A$1. Если аргумент имя_листа отсутствует, имя листа не используется, и адрес, возвращаемый функцией, ссылается на ячейку текущего листа.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Примеры функции АДРЕС для получения адреса ячейки листа Excel
Функция АДРЕС в Excel: описание особенностей синтаксиса
Функция АДРЕС имеет следующую синтаксическую запись:
Первые два аргумента данной функции являются обязательными для заполнения.
Примеры использования функции АДРЕС в Excel
Пример 1. В таблице Excel содержится ячейка, отображающая динамически изменяемые данные в зависимости от определенных условий. Для работы с актуальными данными в таблице, которая находится на другом листе документа требуется получить ссылку на данную ячейку.
На листе «Курсы» создана таблица с актуальными курсами валют:
На отдельном листе «Цены» создана таблица с товарами, отображающая стоимость в долларах США (USD):
В ячейку D3 поместим ссылку на ячейку таблицы, находящейся на листе «Курсы», в которой содержится информация о курсе валюты USD. Для этого введем следующую формулу: =АДРЕС(3;2;1;1;»Курсы»).
Для расчета стоимости в рублях используем формулу: =B3*ДВССЫЛ(D3).
Функция ДВССЫЛ необходима для получения числового значения, хранимого в ячейке, на которую указывает ссылка. В результате вычислений для остальных товаров получим следующую таблицу:
Как получить адрес ссылки на ячейку Excel?
Пример 2. В таблице содержатся данные о цене товаров, отсортированные в порядке возрастания стоимости. Необходимо получить ссылки на ячейки с минимальной и максимальной стоимостью товаров соответственно.
Исходная таблица имеет следующий вид:
Для получения ссылки на ячейку с минимальной стоимостью товара используем формулу:
Функция АДРЕС принимает следующие параметры:
Аналогичным способом получаем ссылку на ячейку с максимальной ценой товара. В результате получим:
Адрес по номерам строк и столбцов листа Excel в стиле R1C1
Пример 3. В таблице содержится ячейка, данные из которой используются в другом программном продукте. Для обеспечения совместимости необходимо предоставить ссылку на нее в виде R1C1.
Исходная таблица имеет следующий вид:
Исходная таблица.» src=»https://exceltable.com/funkcii-excel/images/funkcii-excel78-9.png» >
Для получения ссылки на ячейку B6 используем следующую формулу: =АДРЕС(6;2;1;0).
В результате получим ссылку:
Примечание: при использовании стиля R1C1 запись абсолютной ссылки не содержит знака «$». Чтобы отличать абсолютные и относительные ссылки используются квадратные скобки «[]». Например, если в данном примере в качестве параметра тип_ссылки указать число 4, ссылка на ячейку примет следующий вид:
Так выглядит абсолютный тип ссылок по строкам и столбцам при использовании стиля R1C1.
Активная ячейка VBA | Как найти адрес столбца или строки активной ячейки?
Активная ячейка в Excel VBA
Для эффективной работы с кодированием VBA важно понимать концепцию объекта диапазона и свойств ячеек в VBA. В этих концепциях есть еще одна концепция, которую вам нужно изучить, это «активная ячейка VBA».
В Excel есть миллионы ячеек, и вы наверняка сомневаетесь, какая из них является активной. Для примера посмотрите на изображение ниже.
На самом изображении выше у нас есть много ячеек, чтобы определить, какая из них является активной ячейкой, очень просто, какая бы ячейка не была выбрана прямо сейчас, она называется «Активная ячейка» в VBA.
Даже когда в качестве диапазона ячеек выбрано множество ячеек, любая первая ячейка в выделении становится активной ячейкой. Например, посмотрите на изображение ниже.
В наших предыдущих статьях мы видели, как ссылаться на ячейки в VBA. По свойству Active Cell мы можем ссылаться на ячейку.
Например, если мы хотим выбрать ячейку A1 и вставить значение «Hello», мы можем записать его двумя способами. Ниже приведен способ выбора ячейки и вставки значения с помощью объекта VBA «RANGE».
Сначала будет выбрана ячейка A1 « Диапазон (« A1 »). Выбрать»
Затем он вставит значение «Hello» в диапазон ячейки A1 («A1»). Value = «Hello»
Теперь я удалю строку Range («A1»). Value = «Hello» и использую свойство Active Cell для вставки значения.
Точно так же сначала он выберет ячейку A1 « Диапазон (« A1 »). Выбрать»
Но здесь я использовал ActiveCell.Value = «Hello» вместо Range («A1»). Value = «Hello»
Причина, по которой я использовал свойство Active Cell, потому что в тот момент, когда я выбираю ячейку A1, она становится активной ячейкой. Таким образом, мы можем использовать свойство Excel VBA Active Cell для вставки значения.
Чтобы понять это еще лучше, давайте покажем адрес активной ячейки в окне сообщения. Теперь посмотрите на изображение ниже.
Запустите этот код с помощью клавиши F5 или вручную, тогда он покажет адрес активной ячейки в окне сообщения.
Выход:
Точно так же код ниже покажет значение активной ячейки.
Выход:
Код ниже покажет номер строки активной ячейки.
Выход:
Код ниже покажет номер столбца активной ячейки.
Выход:
Свойство Active Cell также имеет параметры. После ввода свойства ActiveCell откройте скобку, чтобы увидеть параметры.
Используя этот параметр, мы также можем ссылаться на другую ячейку.
Например, ActiveCell (1,1) означает, какая ячейка активна. Если вы хотите переместиться на одну строку ниже, вы можете использовать ActiveCell (2,1), здесь 2 не означает, что нужно переместиться на две строки вниз, а не только на одну строку вниз. Аналогично, если вы хотите переместить один столбец вправо, тогда это код ActiveCell (2,2)
Для примера посмотрите на изображение ниже.
На изображении выше активной ячейкой является A2, чтобы вставить значение в активную ячейку, вы пишете этот код.
Запустите этот код вручную или с помощью клавиши F5, это вставит значение «Hiiii» в ячейку.
Теперь, если вы хотите вставить то же значение в ячейку ниже, вы можете использовать этот код.
Это вставит значение в ячейку под активной ячейкой.
Если вы хотите вставить значение в один столбец справа, вы можете использовать этот код.
Это вставит «Hiiii» в следующую ячейку столбца активной ячейки.
Таким образом, мы можем ссылаться на ячейки в VBA, используя свойство Active Cell.
Надеюсь, вам понравилось. Спасибо, что уделили нам время.




































