|
|||||||
Обработка модулей VBA
Время создания: 16.03.2019 23:43
Раздел: Разные закладки - VBA - VBA управление кодами
Запись: xintrea/mytetra_db_adgaver_new/master/base/1485971366p1buqf2f3w/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
Введение Проект – Файл приложения Microsoft Office, в котором написана программа VBA
Переименование, Удаление, Создание, Добавление, Экспорт, Импорт модулей проекта Все указанные в заголовке действия можно выполнить следующим образом:
Импорт и экспорт модуля из проекта в проект Импорт модуля через экспортируемый файл (а также модулей обычного VB) Для пересылки модуля из проекта в проект можно воспользоваться следующим приемом:
В редакторе VBA нажать правую клавишу мыши на дереве проекта, на имени файла, и выбрать пункт “Экспорт файла” Импорт модуля через организатор (только для Word приложения)
Редакция модуля
Обработка модулей VBA программно Под “ИмяПроекта” в программной конструкции подразумевается соответствующий объект. Для связи с книгой Excel предназначен объект - Workbooks("Имя книги"), а для связи с документом Word объект - Documents(“Имя документа”). Объект для связи с документом, который содержит общие макросы приложения Word, имеет имя: NormalTemplate, в Excel приложении данный объект записывается следующим образом: Workbooks("PERSONAL"). Экспорт модуля проекта в файл ИмяПроекта.VBProject.VBComponents.Item("Имя модуля").Export "Путь и ИмяФайла" Импорт модуля проекта из файла ИмяПроекта.VBProject.VBComponents.Import "Путь и ИмяФайла" Импорт модуля через организатор(данный код только для Word приложения) Application.OrganizerCopy Source:= _ “Путь и имя проекта откуда берется модуль”, Destination:= _ “Путь и имя проекта куда импортируется модуль”, Name:="Имя модуля", Object _ :=wdOrganizerObjectProjectItems Вставка новых строк в модуль проекта ИмяПроекта.VBProject.VBComponents.Item("Имя модуля").CodeModule.InsertLines №, S Где S = “Первая строка”+ chr(13)+”Вторая строка” + chr(13)+”Третья строка” ‘и т.д. Удаление строк из модуля ИмяПроекта..VBProject.VBComponents.Item("Имя модуля").CodeModule.DeleteLines(№,Количество) Где Чтение строк из модуля ИмяПроекта.VBProject.VBComponents.Item("Имя модуля").CodeModule.Lines(№,Количество) Где Определение количества строк в модуле ИмяПроекта.VBProject.VBComponents.Item("Имя модуля").CodeModule.CountOfLines Переименование модулей проекта ИмяПроекта.VBProject.VBComponents.Item(“ИмяМодуля”).Name =”Новое имя модуля” Удаление модулей проекта ИмяПроекта.VBProject.VBComponents.Remove _ ИмяПроекта.VBProject.VBComponents.Item("ИмяМодуля") Определение количества модулей в проекте ИмяПроекта.VBProject.VBComponents.Count Создание нового модуля проекта ‘Создаем новый модуль макросов и подпрограмм ИмяПроекта.VBProject.VBComponents.Add vbext_ct_StdModule ‘Определяем индекс созданного модуля k = ИмяПроекта.VBProject.VBComponents.Count ‘даем свое имя модулю ИмяПроекта.VBProject.VBComponents.Item(k).Name = "Новое имя модуля" |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|