Excel Получить Номер Строки Текущей Ячейки • Работа со столбцами

Excel Получить Номер Строки Текущей Ячейки

Знакомство с объектной моделью Excel следует начинать с такого замечательного объекта, как Range . Поскольку любая ячейка — это Range , то без знания, как с этим объектом эффективно взаимодействовать, вам будет затруднительно программировать для Excel. Это очень ладно-скроенный объект. При некоторой сноровке вы найдёте его весьма удобным в эксплуатации.

Что такое объекты?

Объекты Range

Работа с отдельными ячейками

Синтаксическая форма Комментарии по использованию
Range (» D5 «) или [ D5 ] Ячейка D5 текущего листа. Полная и краткая формы. Тут применим только синтаксис типа A1, но не R1C1. То есть такая конструкция Range (» R1C2 «) — вызовет ошибку, даже если в книге Excel включен режим формул R1C1.
Разумеется после этой формы вы можете обратиться к свойствам соответствующей ячейки. Например, Range (» D5 «) .Interior.Color = RGB(0, 255, 0) .
Cells(5, 4) или Cells(5, «D») Ячейка D5 текущего листа через свойство Cells . 5 — строка (row), 4 — столбец (column). Допустимость второй формы мало кому известна.
Cells(65540) Ячейку D5 можно адресовать и через указание только одного параметра свойсва Cells . При этом нумерация идёт слева направо, потом сверху вниз. То есть сначала нумеруется вся строка (2^14=16384 колонок) и только потом идёт переход на следующую строку. То есть Cells(16385) вернёт вам ячейку A2 , а D5 будет Cells(65540) . Пока данный способ выглядит не очень удобным.

Работа с диапазоном ячеек

Синтаксическая форма Комментарии по использованию
Range ( «A1:B4 «) или [ A1:B4 ] Диапазон ячеек A1:B4 текущего листа. Обратите внимание, что указываются координаты верхнего левого и правого нижнего углов диапазона. Причём первый указываемый угол вполне может быть правым нижним, это не имеет значения.
Range(Cells(1, 1), Cells(4, 2)) Диапазон ячеек A1:B4 текущего листа. Удобно, когда вы знаете именно цифровые координаты углов диапазона.

Работа со строками

Синтаксическая форма Комментарии по использованию
Range (» 3:5 «) или [ 3:5 ] Строки 3, 4 и 5 текущего листа целиком.
Range (» A3:XFD3 «) или [ A3:XFD3 ] Строка 3, но с указанием колонок. Просто, чтобы вы понимали, что это тождественные формы. XFD — последняя колонка листа.
Rows (» 3:3 «) Строка 3 через свойство Rows . Параметр в виде диапазона строк. Двоеточие — это символ диапазона.
Rows(3) Тут параметр — индекс строки в массиве строк. Так можно сослаться только не конкретную строку. Обратите внимание, что в предыдущем примере параметр текстовая строка » 3:3 » и она взята в кавычки, а тут — чистое число.

Работа со столбцами

Синтаксическая форма Комментарии по использованию
Range (» B:B «) или [ B:B ] Колонка B текущего листа.
Range (» B1:B1048576 «) или [ B1:B1048576 ] То же самое, но с указанием номеров строк, чтобы вы понимали, что это тождественные формы. 2^20=1048576 — максимальный номер строки на листе.
Columns (» B:B «) То же самое через свойство Columns . Параметр — текстовая строка.
Columns(2) То же самое. Параметр — числовой индекс столбца. «A» -> 1, «B» -> 2, и т.д.

Весь лист

Синтаксическая форма Комментарии по использованию
Range (» A1:XFD1048576 «) или [ A1:XFD1048576 ] Диапазон размером во всё адресное пространство листа Excel. Воспринимайте эту таблицу лишь как теорию — так работать с листами вам не придётся — слишком большое количество ячеек. Даже современные компьютеры не смогут помочь Excel быстро работать с такими массивами информации. Тут проблема больше даже в самом приложении.
Range (» 1:1048576 «) или [ 1:1048576 ] То же самое, но через строки.
Range (» A:XFD «) или [ A:XFD ] Аналогично — через адреса столбцов.
Cells Свойство Cells включает в себя ВСЕ ячейки.
Rows Все строки листа.
Columns Все столбцы листа.

Примеры кода

Скачать

Типовые задачи

Перебор ячеек в диапазоне (вариант 1)

Количество ячеек в диапазоне получено при помощи свойства .Count . Как .Item , так и .Count — это всё атрибуты коллекций, которые широко применяются в объектой модели MS Office и, в частности, Excel.

Перебор ячеек в диапазоне (вариант 3)

Если необходимо перебирать ячейки в порядке A1, A2, A3, B1, . а не A1, B1, C1, A2, . то вы можете это организовать при помощи 2-х циклов For . Обратите внимание, как мы узнали количество столбцов ( parRange.Columns.Count ) и строк ( parRange.Rows.Count ) в диапазоне, а также на использование свойства Cells . Тут Cells относится к листу и никак не связано с диапазоном parRange .

Перебор строк диапазона

В цикле For each. Next перебираем коллекцию Rows объекта parRange . Для каждой строки формируем цвет на основе первых трёх ячеек каждой строки. Поскульку у нас в ячейках формула, присваивающая ячейке случайное число от 1 до 255, то цвета получаются всегда разные. Оператор With позволяет нам сократить код и, к примеру, вместо Line.Cells(2) написать просто .Cells(2) .

Перебор столбцов

Перебираем коллекцию Columns . Тоже используем оператор With . В последней ячейке каждого столбца у нас хранится размер шрифта для всей колонки, который мы и применяем к свойству Line.Font.Size .

Перебор областей диапазона

Как сделать сквозную нумерацию строк в excel?
И, наконец, последний способ заполнения. Он не очень удобен, однако для полного описания функционала Excel про него необходимо рассказать. Если вам нужна последовательность с определенным шагом, то сделайте следующее:
[expert_bq id=»1570″]Даже несмотря на название второго способа, оба они значительно облегчат Вашу работу с таблицами не нужно будет вводить цифры по порядку в каждую строку отдельно. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq] Для получения результата необходимо знать, как в Экселе проставить нумерацию с использованием функции. Чтобы воспользоваться математическим инструментом, пользователь записывает формулу: =СТРОКА (аргумент).
Excel Получить Номер Строки Текущей Ячейки • Работа со столбцами

Как пронумеровать строки в excel по порядку: все рабочие способы

  1. Выделяем ячейку, в которой будет находиться цифра «1» нумерации. Вводим в строку для формул выражение «=СТРОКА(A1)».Кликаем по кнопке ENTER на клавиатуре.
  2. Как и в предыдущем случае, копируем с помощью маркера заполнения формулу в нижние ячейки таблицы данного столбца. Только в этот раз выделяем не две первые ячейки, а только одну.

Ранее было сказано, что способы с растягиванием выделения хороши лишь в тех случаях, если нужно пронумеровать немного строк, а для длинных таблиц они не подойдут. Так вот, сейчас мы рассмотрим, как в «Экселе» пронумеровать строки при помощи прогрессии.
[expert_bq id=»1570″]Если для аргумента Reference введен диапазон ссылок на ячейки, функция возвращает номер строки или столбца первой ячейки в предоставленном диапазоне см. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq] В цикле For each. Next перебираем коллекцию Rows объекта parRange . Для каждой строки формируем цвет на основе первых трёх ячеек каждой строки. Поскульку у нас в ячейках формула, присваивающая ячейке случайное число от 1 до 255, то цвета получаются всегда разные. Оператор With позволяет нам сократить код и, к примеру, вместо Line.Cells(2) написать просто .Cells(2) .

Работа с объектом Range — Макросы и программы VBA — Excel — Каталог статей — Perfect Excel

  1. Выделяем ячейку, в которой будет стоять единицы и прописываем формулу в специальном поле, как на скриншоте.
  2. Теперь точно также растягиваем ячейку с формулой на необходимое количество ячеек вниз – нумерация продолжится по порядку.

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

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: