Что такое item в excel
Свойство Cells объекта Range в VBA Excel, представляющее коллекцию ячеек заданного диапазона. Обращение к ячейкам диапазона с помощью свойства Cells.
Свойство Cells объекта Worksheet
Обращение к ячейке «A1» активного рабочего листа с помощью свойства Cells:
В данном случае в качестве объекта Range выступает диапазон всего активного рабочего листа (ActiveSheet). Полный путь к ячейке «A1» можно записать так:
Обращение в VBA Excel к ячейке «C5» с помощью свойства Cells по имени рабочего листа (Worksheet) в другой книге Excel:
MsgBox Workbooks ( "Книга1.xlsm" ) . Worksheets ( "Лист1" ) . Cells ( 65539 ) . Address 'Результат: $C$5 в Excel 2016
MsgBox Workbooks ( "Книга1.xlsm" ) . Worksheets ( "Лист1" ) . Cells ( 5 , 3 ) . Address 'Результат: $C$5
MsgBox Workbooks ( "Книга1.xlsm" ) . Worksheets ( "Лист1" ) . Cells ( 5 , "C" ) . Address 'Результат: $C$5
Обращение к диапазону «C5:G10» с помощью свойства Cells активного рабочего листа:
Свойство Cells объекта Range
Обращение в VBA Excel к ячейкам заданного диапазона с помощью свойства Cells рассмотрим на коллекции ячеек диапазона «C5:G10». Обращаться будем к ячейке «D8» активного листа:
Обратите внимание, что отсчет номеров строк, номеров и буквенных обозначений столбцов для указания адреса ячейки внутри диапазона ведется от верхней левой ячейки данного диапазона.
Обход диапазона ячеек циклом
Обход ячеек циклом For Each… Next
Обход ячеек циклом For Each… Next — это самый простой способ обхода всех ячеек заданного диапазона. Он может быть применен, например, для присвоения ячейкам свойств и значений или поиска ячейки с определенным свойством или значением.
Присвоение ячейкам диапазона «B3:F10» числовых значений, соответствующих их порядковым номерам (индексам) в диапазоне:
Поиск в диапазоне «B3:F10», заполненном предыдущим кодом VBA Excel значениями, ячейки со значением «27», окрашивание ее в зеленый цвет и выход из цикла:
Обход диапазона циклом For… Next
Цикл For… Next позволяет указывать переменные в качестве индексов ячеек или номеров строк и столбцов для обхода ячеек заданного диапазона.
Присвоение ячейкам диапазона «B3:F10» числовых значений, соответствующих их порядковым номерам (индексам) в диапазоне, с помощью цикла For… Next:
Если в блоке с оператором With вместо строки .Cells(i) = i указать строку без точки впереди — Cells(i) = i , то свойство Cells будет относиться не к диапазону Range("B3:F10") , а к рабочему листу (объекту ActiveSheet). В этом случае, порядковыми номерами будут заполнены первые 40 ячеек первой строки активного рабочего листа.
Применение в качестве параметров свойства Cells объекта Range переменных, задающих номера строк и номера столбцов указанного диапазона при обходе его ячеек циклом For… Next:
Возвращает объект Range, представляющий диапазон со смещением относительно указанного диапазона.
Синтаксис
выражения. Item (RowIndex, ColumnIndex)
выражение: переменная, представляющая объект Range.
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
RowIndex | Обязательный | Variant | Если предоставлен второй аргумент, возвращается относительный номер строки ячейки. |
Примечания
Если выражение не является диапазоном, содержащим коллекцию одиночных ячеек, например, поскольку оно получено через участника Columns , предоставление второго аргумента является незаконным и приведет к ошибке 1004.
По умолчанию участник Range передает вызовы с параметрами участнику Item . Таким образом, someRange(1) и someRange(1,1) эквивалентны и someRange.Item(1,1)``someRange.Item(1) , соответственно.
Аргументы RowIndex и ColumnIndex являются относительным 1-мя смещениями в верхней левой ячейке первой области диапазона, возвращаемой участником Areas, Union(someSheet.Range("Z4:AA6"), someSheet.Range("A1:C3")) то есть для диапазона, Item(1,1) возвращает диапазон с адресом $Z$4.
ColumnIndex можно предоставлять как числовой индекс, так и строку адресов столбцов, как в A1-notation, "A" 1 "AA" 27 то есть относится к числовому индексу и к .
Можно ссылаться на ячейки за пределами исходного диапазона с помощью свойства Item , предоставляя соответствующие аргументы, Item(3,3) "D4" например, возвращает ячейку для диапазона someSheet.Range("B2:C3") .
Диапазон, возвращаемый при предоставлении только одного параметра, зависит от характера диапазона:
Для диапазонов, состоящих из одиночных ячеек, возвращаемых участниками Cells и Range , Item возвращает одиночные ячейки. Параметр RowIndex ссылается на индекс при перенастройке первой области диапазона слева направо, а не сверху вниз, как для двухдиментальных массивов. Если RowIndex больше, чем количество ячеек в первой области диапазона, то это будет как если бы область была расширена вниз.
Для диапазонов, состоящих из диапазонов строк, возвращаемого строками, пункт возвращает ряды строк. Параметр RowIndex — это смещение на основе 1 из первого ряда диапазона в направлении сверху вниз.
Для диапазонов, состоящих из диапазонов столбцов, возвращаемого столбцами, столбцы Item возвращает столбцы. Параметр RowIndex — это смещение на основе 1 из первого столбца в направлении слева направо. В этой ситуации индекс может быть представлен в качестве строки адресов столбца.
Пример
В следующем примере показано, какая ячейка возвращается, если предоставлены оба параметра.
В следующем примере показаны различные типы диапазонов, которые возвращаются при условии только одного параметра.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Метод Item применяется к коллекциям Axes, ChartGroups, DataLabels, LegendEntries, Points, SeriesCollection и Trendlines .
Коллекция Axes
Возвращает один объект Axis из коллекции Axes .
Синтаксис
выражения. Item (Type, AxisGroup)
выражение (обязательно). Выражение, возвращая коллекцию Axes .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Тип | Обязательный | XlAxisType | Тип оси. Может быть одной из этих констант XlAxisType : xlCategory, xlSeriesAxis (действителен только для трехмерных диаграмм) или xlValue. |
AxisGroup | Необязательный | XlAxisGroup | Группа осей. Может быть одной из этих констант XlAxisGroup : xlSecondary или xlPrimary (по умолчанию). |
Пример
В этом примере задается текст заголовка для оси категории на диаграмме1.
Коллекция ChartGroups
Возвращает один объект ChartGroup из коллекции ChartGroups .
Синтаксис
выражения. Item (Index)
выражение (обязательно). Выражение, возвращаее коллекцию ChartGroups .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Индекс; | Обязательный | Variant | Номер индекса группы диаграмм. |
Пример
В этом примере строки падения добавляются в группу 1 на листе диаграммы 1.
Коллекция DataLabels
Возвращает один объект DataLabel из коллекции DataLabels .
Синтаксис
выражения. Item (Index)
выражение (обязательно). Выражение, возвращаее коллекцию DataLabels .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Индекс; | Обязательный | Variant | Имя или номер индекса метки данных. |
Пример
В этом примере устанавливается формат номеров для пятой метки данных в серии 1 в встроенной диаграмме 1 на таблице 1.
Коллекция LegendEntries
Возвращает один объект LegendEntry из коллекции LegendEntries .
Синтаксис
выражения. Item (Index)
выражение (обязательно). Выражение, которое возвращает коллекцию LegendEntries .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Индекс; | Обязательный | Variant | Номер индекса записи легенды. |
Пример
В этом примере изменяется шрифт для текста записи легенды в верхней части легенды (обычно это легенда для серии 1) в встроенной диаграмме 1 на листе1.
Коллекция Points
Возвращает один объект Point из коллекции Points .
Синтаксис
выражения. Item (Index)
выражение (обязательно). Выражение, возвращаее коллекцию Points .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Индекс; | Обязательный | Long | Номер индекса точки. |
Пример
В этом примере задается стиль маркера для третьей точки в серии 1 в встроенной диаграмме 1 на таблице 1. Указанная серия должна быть 2D-строкой, разбросом или радиолокационной серией.
Коллекция SeriesCollection
Возвращает один объект Series из коллекции SeriesCollection .
Синтаксис
выражения. Item (Index)
выражение (обязательно). Выражение, возвращаее коллекцию SeriesCollection .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Индекс; | Обязательный | Variant | Имя или номер индекса серии. |
Пример
В этом примере содержится две строки кода, эквивалентные.
Коллекция Trendlines
Возвращает один объект Trendline из коллекции Trendlines .
Синтаксис
выражения. Item (Index)
выражение (обязательно). Выражение, возвращаее коллекцию Trendlines .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
Индекс; | Необязательный | Variant | Имя или номер индекса трендовой линии. |
Пример
В этом примере задается число единиц, которые линия тренда на Диаграмме1 расширяется вперед и назад. Пример следует выполнить на диаграмме столбцов 2D, которая содержит одну серию с линией тренда.
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Возвращает определенный член объекта Collection либо по позиции, либо по ключу.
Синтаксис
объект. Item(index)
Синтаксис метода Item имеет следующий квалификатор объекта и часть.
Часть | Описание |
---|---|
object | Обязательно. Выражение объекта, которое оценивает объект в списке Applies To . |
индекс | Обязательно. Выражение expression, задающее позицию элемента коллекции. Если числовое выражение, индекс должен быть числом от 1 до значения свойства Count коллекции. Если выражение строки, индекс должен соответствовать ключевому аргументу, указанному при добавлении в коллекцию указанного участника. |
Примечания
Если значение, предоставленного в качестве индекса , не соответствует существующему члену коллекции, возникает ошибка. Метод Item является методом по умолчанию для коллекции. Поэтому следующие строки кода являются эквивалентными:
Пример
В этом примере используется метод Item для получения ссылки на объект в коллекции. Если считать объектом Collection, следующий код извлекает из коллекции ссылки на объекты, представляющие день рождения Билла Смита и день рождения Адама Смита, используя в качестве аргументов индекса клавиши "SmithBill" и "SmithAdam". Birthdays
Обратите внимание, что первый вызов явным образом задает метод Item, однако второй — нет. Оба вызова работают, поскольку метод Item является методом по умолчанию для объекта Collection. Ссылки, заданные SmithBillBD SmithAdamBD и использующие Set, можно использовать для доступа к свойствам и методам указанных объектов.
Чтобы запустить этот код, создайте соответствующую коллекцию и заполните ее по крайней мере двумя указанными элементами.
См. также
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Collection – это объект, представляющий из себя упорядоченный набор данных (коллекцию), на который можно ссылаться как на одно целое. Элементы коллекции никак между собой не связаны и могут иметь разные типы данных.
Создание объекта Collection
Создать новый экземпляр Collection в коде VBA Excel можно двумя строками:
или одной строкой:
Лист автоматической вставки объектов, методов и свойств (лист подсказок) предоставит при написании кода VBA Excel простой доступ к методам Add, Item, Remove и свойству Count объекта Collection:
Лист подсказок отображается автоматически после ввода точки или, в иных случаях, вызывается сочетанием клавиш «Ctrl+Пробел».
Методы и свойство коллекции
Метод Add
Метод Add добавляет новый элемент в объект Collection.
Синтаксис метода Add:
Компоненты метода Add:
- Collection – обязательный компонент, представляющий выражение (переменную), возвращающее объект Collection.
- Элемент (item) – обязательный аргумент, представляющий выражение любого типа, возвращающее элемент, который необходимо добавить в коллекцию.
- Ключ (key) – необязательный аргумент, представляющий строковое выражение, задающее уникальный ключ, который может использоваться вместо индекса позиции для доступа к элементу коллекции.
- До* (before) – необязательный аргумент, указывающий на позицию существующего элемента в коллекции, перед которым будет добавлен новый элемент.
- После* (after) – необязательный аргумент, указывающий на позицию существующего элемента в коллекции, после которого будет добавлен новый элемент.
* Аргументы «До» и «После» не могут применяться одновременно. Если аргументу «До» или «После» присвоено числовое значение, оно должно быть в пределах диапазона от 1 до значения свойства Collection.Count. Если это строка, она должна соответствовать одному из ключей существующих в коллекции элементов.
Метод Item
Метод Item возвращает элемент объекта Collection по индексу позиции или по ключу.
Синтаксис метода Item объекта Collection:
Компоненты метода Item:
- Collection – обязательный компонент, представляющий выражение (переменную), возвращающее объект Collection.
- Index – обязательный аргумент, представляющий выражение, возвращающее номер (индекс) позиции элемента коллекции или его уникальный ключ.
Метод Remove
Метод Remove удаляет элемент из объекта Collection по индексу позиции или по ключу.
Синтаксис метода Remove объекта Collection:
Компоненты метода Remove:
- Collection – обязательный компонент, представляющий выражение (переменную), возвращающее объект Collection.
- Index – обязательный аргумент, представляющий выражение, возвращающее номер (индекс) позиции элемента коллекции или его уникальный ключ.
Свойство Collection.Count
Свойство Count объекта Collection возвращает количество элементов в коллекции.
Примеры кода с объектом Collection
Пример 1
Создание нового экземпляра объекта Collection, добавление в коллекцию трех элементов, определение количества элементов в коллекции, извлечение одного и того же элемента по индексу и по ключу:
Читайте также: