Функция Excel VBA OFFSET

Поскольку в этом слове есть две вещи, одна - VBA, а другая - OFFSET. В этом я объясню, как использовать функцию OFFSET с помощью VBA (Visual Basic для приложений).

VBA - это язык программирования для тех, кто работает в Excel и других программах Office, поэтому можно автоматизировать задачи в Excel, написав макросы.

OFFSET - это справочная функция в Excel. Функция OFFSET возвращает ссылку на диапазон, представляющий собой определенное количество строк и столбцов из другого диапазона или ячейки. Это одно из самых важных понятий в Excel.

Давайте рассмотрим, у нас есть набор данных, который состоит из столбцов Имя клиента , Продукт, Продажи, Количество, Скидка.

Предположим, что нам нужно перейти от определенной ячейки к определенному количеству строк и выбрать эту ячейку в этот момент времени. Функция OFFSET очень полезна. Например, из ячейки B1 мы хотим переместиться на 5 ячеек вниз и хотим выбрать 5- ю ячейку, т.е. B6. Предположим, если вы хотите перейти вниз от 2 строк ячейки B1 и перейти на 2 столбца вправо и выбрать эту ячейку, т.е. ячейку D2.

Чтобы использовать функцию OFFSET в VBA, мы должны использовать объект VBA RANGE, потому что OFFSET ссылается на ячейки, и из этого объекта RANGE мы можем использовать функцию OFFSET. В Excel RANGE относится к диапазону ячеек.

Давайте посмотрим, как OFFSET используется с RANGE.

Range ( «A1»). Смещение (5) .select

Как использовать функцию OFFSET в Excel VBA?

Ниже приведены различные примеры использования функции OFFSET в Excel с использованием кода VBA.

Вы можете скачать этот шаблон VBA OFFSET Excel здесь - Шаблон VBA OFFSET Excel

VBA OFFSET - Пример № 1

Шаг 1. Выберите вкладку «Разработчик». Нажмите «Вставить» и выберите первый вариант из элементов управления ActiveX. Как вы можете видеть эту командную кнопку.

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

Шаг 3: Чтобы войти в функцию OFFSET, щелкните правой кнопкой мыши на кнопке Command и выберите View Code.

При нажатии на кнопку «Просмотреть код» появляются окна Microsoft VBA (Visual Basic для приложений). В этом окне мы видим, что написана какая-то функция.

Код:

 Частный Sub CommandButton1_Click () End Sub 

Шаг 4: Внутри этой функции мы должны написать наш код OFFSET для выбора ячеек. Как упоминалось ранее, мы должны использовать функцию OFFSET с RANGE в VBA.

Код:

 Private Sub CommandButton1_Click () Диапазон (Конец Sub 

Шаг 5: В этом коде мы должны выбрать 5- ю ячейку столбца Product, т.е. B6 . Cell1 в Range - это B1, потому что мы должны переместиться на 5 ячеек от ячейки B1 к B6, то есть на 5 ячеек вниз.

Код:

 Private Sub CommandButton1_Click () Диапазон ("B1"). Смещение (Конец Sub 

Функция OFFSET имеет два аргумента:

  1. RowOffset : сколько строк мы хотим переместить из выбранной строки. Мы должны передать число в качестве аргумента.
  2. ColumnOffset : сколько столбцов мы хотим переместить из выбранной строки.

Шаг 6: Теперь я хочу выбрать ячейку B6, т.е. мне нужно переместиться на 5 ячеек вниз. Итак, мы должны ввести 5 в качестве параметра для смещения строки.

Код:

 Private Sub CommandButton1_Click () Диапазон ("B1"). Смещение (5) End Sub 

Шаг 7: После закрытия скобки мы должны поставить точку (.) И написать метод Select.

Код:

 Private Sub CommandButton1_Click () Диапазон ("B1"). Смещение (5). Выберите End Sub 

Шаг 8: Чтобы выбрать ячейку B6, нажмите кнопку «Command».

Как мы видим, ячейка B6 выбирается после нажатия на кнопку.

VBA OFFSET - Пример № 2

В этом примере мы увидим, как использовать аргумент столбца OFFSET. Мы будем работать над теми же данными. Все вышеперечисленные шаги будут одинаковыми, но нам нужно внести изменения в код.

Так как я хочу сдвинуться вниз на 5 ячеек и взять нужные 3 столбца, чтобы добраться до ячейки E6

Код:

 Private Sub CommandButton1_Click () Диапазон ("B1"). Смещение (5, 3). Выберите End Sub 

Чтобы выбрать ячейку E6, нажмите кнопку «Command».

Как мы видим, ячейка E6 выбрана после нажатия на кнопку.

То, что нужно запомнить

  • Это справочная функция в Excel. Функция OFFSET возвращает ссылку на диапазон, представляющий собой определенное количество строк и столбцов из другого диапазона или ячейки.
  • VBA OFFSET используется с объектом RANGE в VBA.

Рекомендуемые статьи

Это руководство по VBA OFFSET. Здесь мы обсуждаем, как использовать функцию OFFSET в Excel с использованием кода VBA, а также с практическими примерами и загружаемым шаблоном Excel. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Использование функции VBA UBound
  2. Учебные пособия по OFFSET Excel Функция
  3. Как создать гиперссылку VBA?
  4. Способы использования Excel Fill Handle

Категория: