Първи стъпки с VBA в перспектива 2018

Лидери в тази статия е посветена на автоматизация на Outlook с помощта на VBA. Това е истински пример за учене инструменти за програмиране, VBA и развитие, които са достъпни за Вас като опитен потребител на Outlook.

подходът

Програмиране с VBA - е мощно решение, но този подход не винаги е оптимално. Понякога, за да постигне целите си, че има смисъл да се използват други методи.

Преди да създадете проект VBA, уверете се, че имате достатъчно време да се работи с VBA. Програмиране изисква внимание и може да бъде непредсказуем. Ако сте - начинаещ, толкова повече не трябва да се включат в програми, ако не разполагат с време за внимателен работа. Опитите да се напише "скрипт в бързината", за да реши проблема в кратък период от време може да доведе до напрегната ситуация. Ако побързаме, моля използвайте по-конвенционалните методи, дори ако те са свързани с еднообразието и повторението.


Първи стъпки с VBA в Outlook 2010

Ако не съществува обект, те могат да бъдат манипулирани чрез определяне на свойствата му и призова своите методи. ви модифициран подпрограмата съдържа метод, който е кодът, който извършва действието. Test () метод в тази рутина сега е член на даден обект Project1.

Върнете се в раздела за разработчици в Outlook и след това върху Macros отново. Изберете Project1.Test макро в списъка, който се появява, щракнете върху Изпълни. за да се покаже на екрана на малък прозорец със съобщение с текст "Здравей, свят!"

Честито! Току-що създадохте обичай VBA код и да го вградите в Outlook! Щракнете върху OK в прозореца на съобщението за да го затворите и да завърши макроса.

Ако съобщението не се появи, проверете макро настройките за сигурност и рестартирайте Outlook.

Ако сте използвали по един или друг макро достъпни с помощта на клавишни комбинации или бутони в лентата с инструменти за бърз достъп. тя може да бъде по-удобно.

За да създадете бутон за макроса Тест за лентата с инструменти за бърз достъп. Следвайте процедурата по-долу.

Създаване на бутон за макрос в лентата с инструменти за бърз достъп

Щракнете върху раздела Файл.

Изберете Настройки. , за да отворите диалоговия прозорец на Outlook опции. и след това кликнете върху Quick Toolbar Access.

През Изберете командите от: списък, изберете този макрос. В списъка, намерете текста, който е подобен на Project1.Module1.Test. и го изберете.

Кликнете върху Добавяне >>. За да добавите макро в списъка отдясно, а след това върху Редактиране .... бутон, за да изберете изображението, което искате да свържете с макроса.

Щракнете върху бутона "ОК". От лентата с инструменти за бърз достъп над раздела Файл нов бутон трябва да се появи.

Сега можете бързо да стартирате макро си по всяко време, без да използвате раздела за разработчици. Опитайте се да го направи.

Фигура 3. макроси бърз достъп Toolbar


Първи стъпки с VBA в Outlook 2010

Тази статия описва как да използвате VBA в Outlook, за да промените данните за контакт, и обяснява редица VBA концепции.

Достъпът до "Контакти" папка

Първата задача е да се осигури достъп до обекта на папка "Контакти" в Outlook, а след това се съхранява препратка към този обект в променлива.

В програмирането, променлива - това е временно име обект, който може да съдържа стойност, или препратка към даден обект. В следващия пример кодът е активиран променлива ContactsFolder. Той указва на VBA, че той щеше да го постави в папка обект и изпълнение на метод GetDefaultFolder Session обекта. Контакти папка, за да се намери и поддържа препратка към него в тази променлива.

Фигура 4. Избор на папка тип използване Intellisense


Първи стъпки с VBA в Outlook 2010

Предмети - този имот Folder обект. и граф - свойства на имота на артикули.

Стартиране на макрос. каре за съобщение трябва да се появи на броя на контактите на разположение в Outlook.

колекция от предмети

Колекция - това е един от най-силните черти на съвременните езици за програмиране като VBA. Колекция - колекция от предмети, които могат да се съхраняват в имота и лесен "Преглед", за да се позволи достъп до всеки един от тях. В този случай, кодът трябва да се справят с циклично колекция от контакти, за да намерят служители Пример системи.

Както бе споменато по-рано, ContactsFolder променлива осигурява достъп до колекция от папка артикули. Колекция папката "Контакти" връща тип обекти ContactItem. Създаване на променлива, която съдържа препратка към всеки отделен случай ContactItem.

Поради наличието на ContactItem. проверите името на всеки лице. Тъй като информацията за обект ContactItem магазин за контакт, за името на фирмата, трябва да бъде собственост. Но тъй като името на този имот е непознат за вас, да се намери, че е необходимо да се прибегне до един от следните два метода.

Определяне на свойствата на заглавия

За да се възползват пълноценно от обекта в VBA, трябва да знаете неговите свойства и методи. Въпреки, че много от задачите може да се извърши след работа с примери за код, който може да се намери в мрежата, систематично проучване на обекти в експлоатация ще се разшири набора от възможности, да се ускорят отстраняване на грешки и да спести време.

След преразглеждане на списъка, ще видите, че има CompanyName собственост. Тя изглежда като тя трябва да работи.

Циклично колекция

Сега имате колекция, вие знаете какъв тип обект е, и ли имот за достъп до откритите обекти. Готови ли сте да се справят с цикъла събиране и обработка на обекти, съдържащи се в нея, като използвате за всяка линия.

В псевдо-код, вие сте готови да извършите следното.

За вземане на решения с помощта на отчета Ако

Вашето цялостно решение изисква макро промени само тези контакти, които работят в Пример Systems, без да докосвате други контакти. Условно логика на такъв план - предмет на програмисти гордост. Тук можете да използвате отчета Ако. VBA код, за да изпълнява само когато истината на дадено състояние. В противен случай, той трябва да се движи кода представени след отчета за End If.

В случай на проблеми, се работи по определяне на състоянието е да се възложи низа "Пример Systems" CompanyName собственост на текущия обект ContactItem.

Добавяне към състояние код на скрипта като цяло изглеждаше следния код.

След изпълнение на този код в "интерпретация" трябва да се появи на имената на контактите от Пример Systems.

Фигура 6. Използване на прозореца за показване на тълкуването


Първи стъпки с VBA в Outlook 2010

Бъдете наясно с начините за комбиниране на фиксирани линии с помощта на Debug.Print за яснота и по-рано с помощта на MsgBox (например, думата "Found", следван от посочената стойност на имота се връща). За да го заредите, два реда текст трябва да бъдат комбинирани с използването на линии, съчетаващи оператор ( ).

Внимание! Продължавайте да работите по този урок внимателно. Може да работи с действителните си списък на Outlook контакти, както и с няколко въображаеми контакти от Пример Systems. Име на фирма, замяна за всеки един от вашите контакти, наречени "Пример Мрежи" - не е добра идея.

Промяна на името на фирмата

Почти сте готови. Ако сте изтеглили вашите контакти, те могат да бъдат цикличен процес, както и да се направи разграничение на контактите си от контакти в Пример Systems. За извършване на замяната на "Пример Мрежи", трябва да се промени CompanyName собственост и се обадете на метод Запази, за да запазите промените.

Изпълнете този макрос, и след това намерете контактите между техните "Примерни системи". Име на фирма, в тези контакти сега трябва да изглежда по следния начин: "Пример Мрежи". Имайте предвид, че с цел допълнително да тествате сценария трябва да замени отново на името на фирмата, за да "Примерни системи". Това може да стане ръчно или чрез създаване на нов макрос, който ще го замени за вас.

Запазване на отчета за код Debug.Print, дори и ако това не се изисква да стартирате скрипта. Колкото по-голяма данните относно отговора на вас и вашите потребители получават от макро, толкова по-добре.

За да изпълните проста замяна на един друг подниз, можете да използвате за замяна. но често можете да се сблъскате със ситуации, в които е необходимо да манипулират струни по-сложен код. Добавете следния ред непосредствено преди кода призовава Contact.Save.

порт код от компютъра, на който той е разработен, на други компютри, наречени на разполагане и може да играе важна роля в проекта за програмиране. В този раздел, ние изучаваме начина на придвижване на нов макрос другите компютри.

Първо, малко история. VBA код за Outlook е проектиран като макроси среда личностно развитие. Той не е предназначен за разполагане или дистрибуция. По този начин, с изключение на макроса в документа, както е прието в други офис приложения като Excel или Word, не можете.

Внос и износ модули

В Outlook, щракнете върху бутона на макроси в раздела за разработчици. Трябва да видите запис за ... Project1.Contacts.CompanyChange.