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

Это означает, что если выбрана ячейка E4, то A1 будет содержать ее адрес или $ E $ 4. Если затем вы нажмете клавишу со стрелкой вправо, то содержимое A1 изменится на $ F $ 4.

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

Public Function CurrentCell() As String     Application.Volatile     CurrentCell = ActiveCell.Address End Function

Включение метода Application.Volatile означает, что каждый раз, когда рабочий лист пересчитывается, эта функция (макрос) снова запускается. Чтобы использовать макрос, вы можете поместить следующее в любую желаемую ячейку, включая A1:

=CurrentCell

Обратите внимание, что этот макрос не приводит к изменению содержимого ячейки A1 каждый раз, когда вы переходите к другой ячейке. Опять же, содержимое A1 изменится только при повторном вычислении книги, либо путем изменения чего-либо на листе, либо путем нажатия F9.

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

  1. Откройте редактор VBA, нажав Alt + F11.

  2. В окне «Проект» в левой части редактора дважды щелкните имя рабочего листа, который вы используете. (Вам может потребоваться сначала открыть папку VBAProject, а затем открыть в ней папку Microsoft Excel Objects.)

  3. В окне кода для рабочего листа щелкните раскрывающийся список «Объект» и выберите «Рабочий лист». Когда вы это сделаете, процедура должна измениться на SelectionChange, а в окне кода должна появиться структура для обработчика событий.

  4. Измените обработчик событий, чтобы он выглядел следующим образом:

  5. Закройте редактор VBA.

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

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (2302) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:

link: / excelribbon-Displaying_the_Selected_Cells_Address [Отображение адреса выбранной ячейки].