Vba Excel Чем Отличается Sheets от Worksheets • Метод autofill

Vba excel чем отличается sheets от worksheets

Ссылка на объект коллекции — это название коллекции, после которого в скобках указывается индекс объекта или его имя в кавычках. Например, ссылка Workbooks (1) выбирает первую из открытых рабочих книг , а Workbooks («budget») ссылается на рабочую книгу с именем «budget» .

  • Количество элементов коллекции заранее не фиксируется.
  • Новый элемент может быть добавлен в произвольное место коллекции.
  • Элементы коллекции перенумеровываются при удалении или добавлении элементов в коллекцию.
  • Различные коллекции объектов имеют общие методы и свойства, но параметры вызова методов могут различаться.

Объекты Workbooks и Workbook

Документ MS Excel ( рабочая книга ) это объект Workbook . Можно одновременно работать с несколькими рабочими книгами . Открытые рабочие книги составляют коллекцию рабочих книг — Workbooks .

Свойство Workbooks объекта Application возвращает объект Workbooks .

При открытии или создании рабочей книги элемент Workbook автоматически добавляется в конец коллекции Workbooks , а при закрытии книги соответствующий элемент также автоматически удаляется из коллекции.

Параметр SaveChanges сохраняет или отменяет сделанные изменения. Параметр Filename задает название новой рабочей книги

Событийные процедуры

Событийные процедуры записываются на процедурном листе, связанном с объектом. Каждый объект имеет свои собственные события.

Чтобы вставить событийную процедуру для объекта Workbook

  • выделите объект ThisWorkbook (Эта книга) в окне проекта;
  • перейдите на лист процедур, нажав клавишу F7. Можно выполнить команду View Code или сделать двойной щелчок на объект ThisWorkbook ;
  • на процедурном листе в окне выбора объектов (вверху слева) выберите объект Workbook ;
  • в окне выбора событий (вверху справа) выберите событие. Автоматически вставляется процедура со стандартным именем, которое состоит из названия объекта и названия события, разделенных нижним подчеркиванием (_), например, для события Open событийная процедура имеет имя Workbook_Open ;
  • запишите текст процедуры.

При вставке нового листа в рабочую книгу процедура запрашивает имя нового листа и вставляет лист в начало рабочей книги .

Vba Excel Чем Отличается Sheets от Worksheets • Метод autofill

Значение параметра, являющееся ссылкой на объект — новый лист, передается процедуре во время ее выполнения. Метод Move перемещает вставленный лист. Параметр before этого метода определяет новое месторасположение листа — начало рабочей книги .

Объекты Sheets, WorkSheets и WorkSheet

Коллекция Sheets представляет собой совокупность листов различных типов — рабочих листов (коллекция Worksheets ) и листов диаграмм (коллекция Charts ). Таким образом, каждый элемент коллекции Sheets является элементом коллекции WorkSheets или коллекции Charts и наоборот, любой элемент коллекции WorkSheets или коллекции Charts принадлежит коллекции Sheets .

Методы
Метод Add

Добавляет новый лист в коллекцию Sheets , WorkSheets . При создании рабочей книги коллекция WorkSheets содержит столько рабочих листов , сколько определено свойством SheetsInNewWorkbook объекта Application .

  • expression — выражение, возвращающее коллекцию WorkSheets или Sheets . Указание обязательно;
  • Before 1 Возможно задание только одного из двух параметров Before или After — специфицирует лист, перед которым вставляется новый лист;
  • After 2 Возможно задание только одного из двух параметров Before или After — специфицирует лист, после которого вставляется новый лист;
  • Count — количество вставляемых листов;
  • Type — тип вставляемого листа. Используются константы: xlWorksheet (по умолчанию), xlChart (только для объекта Sheets ), xlExcel4MacroSheet , xlExcel4IntlMacroSheet .
  • При отсутствии всех параметров один рабочий лист добавляется перед активным листом.
  • При задании параметров Before и After указывается ссылка на лист как индекс или имя в коллекции листов, например, Sheets (1) или Sheets («Лист1»)
Методы Move и Select
  • expression — ссылка на объект, представляющий перемещаемый лист. Указание обязательно;
  • необязательные параметры before и after (ссылки на лист, см. описание метода Add ) определяют новое местоположение перемещаемого листа. Если не указан ни один из параметров, то лист перемещается во вновь создаваемую рабочую книгу .

Метод Select выделяет объект. При применении к одному листу методы Activate и Select активизируют указанный лист. Но метод Select используется для группировки листов, т.е. для расширения выделения.

  • expression — ссылка на объект, представляющий выделяемый лист. Указание обязательно;
  • Replace — для расширения выделения аргумент устанавливается в False . Если аргумент не задан или принимает значение True , то вместо старой области выделения создается новая область выделения. Необязательный параметр.
  • Для выделения листов с конкретными именами используйте функцию Array . Например, Sheets (Array(«Лист8», «Лист12»)).Select .

Процедура перемещает нечетные листы в конец рабочей книги . В цикле выделяются нечетные листы.

Vba Excel Чем Отличается Sheets от Worksheets • Метод autofill

Событийные процедуры

Чтобы вставить событийную процедуру для объекта WorkSheet :

  • выделите объект WorkSheet (например, Лист1 ) в окне проекта;
  • перейдите на лист процедур этого объекта;
  • на процедурном листе в окне объектов (вверху слева) выберите объект WorkSheet ;
  • в окне выбора событий (вверху справа) выберите событие;
  • запишите текст процедуры.

При выборе события автоматически вставляется процедура со стандартным именем, которое состоит из названия листа и названия события, разделенных нижним подчеркиванием (_).

При активизации листа Лист1 в ячейку A1 заноситcя название листа.

Пример работы с событийной процедурой объекта WorkSheet

Рис. 8.8. Пример работы с событийной процедурой объекта WorkSheet

Объект Range

При работе в MS Excel чаще всего выполняются некоторые действия с группой ячеек рабочего листа . Объект Range — это отдельная ячейка , целиком строка или столбец рабочего листа , выделенный интервал ячеек, непрерывный интервал ячеек или интервал несмежных ячеек.

Для задания объекта Range существуют различные возможности. Например, благодаря свойству ActiveCell , активная ячейка представляется в качестве объекта Range . Свойство Selection определяет выделенный интервал ячеек в качестве объекта Range .

[expert_bq id=»1570″]В этом случае метод AutoFilter выполняет команду Данные, Фильтр, Автофильтр Data, Filter, AutoFilter по критериям, указанным в аргументе. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq] Для сохранения документа может быть использован метод SaveCopyAs, который сохраняет копию рабочей книги в файле. Следующий пример, использующий метод SaveCopyAs полностью аналогичен примеру, использующему метод SaveAs при задании всех параметров как Type.Missing.
Скриншот 5

Работа с Excel в С#

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

Объектная модель Excel

Проще всего рассматривать объектную модель как некое дерево или иерархическую структуру, так как каждый объект имеет свое ответвление. Кусочек этой структуры вы можете увидеть на рисунке далее.

Это, конечно, как вы понимаете только часть объектной модели Excel, мы перечислили только одни их самых основных объектов. Полное дерево объектов исчисляется сотнями объектов. Возможно она сейчас кажется сложной, не переживайте со временем вы начнете быстро в ней ориентироваться. Главное сейчас — это понять, что есть некие объекты, которые могут состоять из других объектов.

Объектная модель Excel

[expert_bq id=»1570″]Мы с Вами уже выгружали данные по шаблону через клиент Access из базы MSSql 2008 в Word и Excel вот в этой статье Выгрузка данных из Access в шаблон Word и Excel. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq] Технология выполнения
1. Запустите приложение Excel, сохраните документ.
2. Перейдите в редактор VBA.
3. Создайте форму согласно приведенному рис. 92.
4. На листе Excel расположите необходимый текст (оформление), предусмотрев соответствующие ячейки вывода информации (рис. 93).

ПГУТИ — Офисное программирование. 7.1. Основные объекты VBA в Excel

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

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

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