Noțiuni de bază cu VBA în Outlook 2018

Liderii din acest articol este dedicat automatizării Outlook utilizând VBA. Acesta este un exemplu real de învățare instrumente de programare, VBA și dezvoltare, care sunt disponibile pentru tine, ca un utilizator experimentat la Outlook.

abordarea

Programarea cu VBA - este o solutie puternica, dar această abordare nu este întotdeauna optimă. Uneori, pentru a atinge obiectivele sale, are sens să utilizeze alte metode.

Înainte de a crea un proiect VBA, asigurați-vă că aveți timp pentru a lucra cu VBA. Programarea necesită atenție și poate fi imprevizibil. Dacă sunteți - începător, cu atât mai mult nu ar trebui să se implice în programare, dacă nu aveți timp pentru munca atentă. Încercările de a scrie un „script în grabă“ pentru a rezolva problema într-un timp scurt, poate duce la situații tensionate. Dacă vă grăbiți, vă rugăm să folosiți mai multe metode convenționale, chiar dacă acestea sunt asociate cu monotonia și repetarea.


Noțiuni de bază cu VBA în Outlook 2010

Dacă există obiectul, acestea pot fi manipulate prin setarea proprietăților sale și a metodelor sale de asteptare. ați modificat subrutina conține o metodă, care este codul care efectuează acțiunea. Test () metoda în această rutină este acum membru al unui obiect Project1.

Du-te înapoi la fila Dezvoltator în Outlook, apoi din nou pe Macrocomenzi. Selectați Project1.Test macro din lista care apare, apoi pe Executare. pentru a afișa pe ecran o casetă mic mesaj cu textul „Bună ziua, lume!“

Felicitări! Tocmai ați creat un cod VBA personalizat și încorporați-l în Outlook! Faceți clic pe OK în caseta de mesaj pentru a închide și finaliza macro.

Dacă mesajul nu apare, verificați setările de securitate macro și reporniți Outlook.

Dacă ați folosit unul sau altul macro accesate utilizând comenzi rapide de la tastatură sau butoanele de pe bara de instrumente Acces Rapid. acesta poate fi mai convenabil.

Pentru a crea un buton pentru macro test la Bara de instrumente Acces Rapid. Urmați procedura de mai jos.

Crearea unui buton pentru un macro Bara de instrumente Acces Rapid

Faceți clic pe fila Fișier.

Selectați Opțiuni. pentru a deschide caseta de dialog Opțiuni Outlook. și apoi faceți clic pe bara de instrumente Acces rapid.

În Alegeți comenzi din: listă, selectați această macro. În lista, localizați textul care este similar cu Project1.Module1.Test. și selectați-l.

Faceți clic pe Adăugați >>. Pentru a adăuga un macro la lista din dreapta, apoi faceți clic pe Edit .... buton pentru a selecta imaginea pe care doriți să o asociați cu macro.

Faceți clic pe butonul „OK“. Pe bara de instrumente Acces rapid deasupra fila Fișier ar trebui să apară nou buton.

Acum puteți rula rapid macro în orice moment, fără a utiliza fila Dezvoltator. Încearcă să facă acest lucru.

Figura 3. Macrocomenzi Bara de instrumente Acces Rapid


Noțiuni de bază cu VBA în Outlook 2010

Acest articol descrie modul de utilizare VBA în Outlook pentru a modifica datele de contact și explică o serie de concepte VBA.

Accesul la dosarul „Contacte“

Prima sarcină este de a avea acces la dosarul obiect „Contacte“ în Outlook, și apoi stoca o referință la acel obiect într-o variabilă.

În programare, o variabilă - acesta este un obiect temporar numit, care poate conține o valoare sau o referință la un obiect. În următorul cod de probă este activată ContactsFolder variabilă. Acest cod spune VBA că el a fost de gând să-l pună într-un obiect Folder și să execute metoda GetDefaultFolder sesiune obiect. Contacte dosar pentru a găsi și să păstreze o referire la ea în această variabilă.

Figura 4. Selectarea folderului tip folosind IntelliSense


Noțiuni de bază cu VBA în Outlook 2010

Articole - acest obiect dosar proprietate. și Count - proprietăți ale proprietății Elemente.

Run Macro. O casetă de mesaj ar trebui să apară numărul de contacte disponibile în Outlook.

colecție de obiecte

Colectia - aceasta este una dintre cele mai puternice caracteristici ale limbaje de programare moderne, cum ar fi VBA. Colectia - o colecție de obiecte care pot fi stocate în proprietate și ușor „Browse“ pentru a permite accesul la fiecare dintre ele. În acest caz, codul ar trebui să se ocupe în mod ciclic o colecție de contacte pentru a găsi angajați Exemplul Systems.

Așa cum am menționat mai devreme, ContactsFolder variabilă oferă acces la o colecție de articole dosar. Articole din colecții dosar „Contacte“ returnează obiecte de tip ContactItem. Creați o variabilă care conține o trimitere la fiecare instanță ContactItem.

Datorită prezenței ContactItem. verifica numele pentru fiecare față. Deoarece informațiile obiect magazin ContactItem despre o persoană de contact, pentru numele companiei ar trebui să fie proprietate. Dar, așa cum numele această proprietate este necunoscut pentru tine, pentru a găsi că este necesar să se recurgă la una dintre următoarele două metode.

Definirea proprietăților titlurilor

Pentru a utiliza pe deplin a obiectului în VBA, trebuie să cunoașteți proprietățile și metodele sale. Deși multe dintre sarcinile pot fi efectuate după ce a lucrat cu exemple de cod care poate fi găsită în rețea, un studiu sistematic de obiecte în uz se va extinde gama de opțiuni, accelera de depanare și de a economisi timp.

După trecerea în revistă a listei, veți vedea că acolo COMPANYNAME proprietate. Se pare că ar trebui să funcționeze.

colectare Cyclic

Acum aveți o colecție, știți ce tip de obiect este, și aveți o proprietate pentru a avea acces la obiectele detectate. Ești gata să se ocupe de ciclul de colectare și de a manipula obiectele conținute în ea prin folosind pentru fiecare buclă.

În pseudo-cod, sunteți pregătit pentru a efectua următoarele.

Procesul decizional cu ajutorul declarației Dacă

Soluția dvs. completă presupune că schimbările macro numai acele contacte care lucrează în exemplul sisteme, fără a atinge alte date de contact. Logica condiționată a unui astfel de plan - subiectul programatori mândrie. Aici puteți utiliza instrucțiunea If. Codul VBA pentru a efectua numai atunci când adevărul unei anumite condiții. În caz contrar, el trebuie să mute codul prezentat după declarația End If.

În cazul în care apar probleme, se lucrează la determinarea stării este de a atribui șirul „Exemplu Systems“ proprietatea CompanyName a ContactItem obiectului curent.

Adăugați la codul condiție pentru script-ul ca întreg arăta ca următorul cod.

După executarea acestui cod în „interpretarea“ ar trebui să apară nume de contact din exemplul Systems.

Figura 6. Utilizați fereastra pentru a afișa interpretarea


Noțiuni de bază cu VBA în Outlook 2010

Fiți conștienți de modalități de a combina fix-line folosind Debug.Print pentru claritate, și mai devreme prin utilizarea MsgBox (de exemplu, cuvântul „Found“, urmat de valoarea indicată a proprietății returnate). Pentru ao încărca, două linii de text ar trebui să fie combinate cu utilizarea liniilor de combinare operatorului ( ).

Atenție! Continuă să lucrezi la acest tutorial cu atenție. Lucrezi cu lista dvs. reală de contact Outlook, precum și cu mai multe contacte imaginare din exemplul Systems. Compania de înlocuire nume pentru fiecare dintre contactele numite „Exemplu Networks“ - nu este o idee bună.

Schimbarea numelui companiei

Sunteți aproape terminat. Dacă ați descărcat persoanele de contact, acestea pot fi proces ciclic, precum și pentru a distinge contactele lor de contact în exemplul Systems. Pentru a efectua înlocuirea pe „exemplul Rețele“, ar trebui să fie schimbat CompanyName de proprietate și apela metoda Salvare pentru a salva modificările.

Executați acest macro, și apoi localizați contactele între lor „Exemplu Systems“. Numele companiei în aceste contacte ar trebui să arate după cum urmează: „Exemplul Rețele“. Rețineți că, în scopul de a testa în continuare script-ul trebuie să înlocuiască din nou numele companiei de a „Exemplu Systems“. Acest lucru se poate face manual sau prin crearea unui alt macro pe care îl va înlocui pentru tine.

Salvați declarația de cod Debug.Print, chiar dacă nu este necesar pentru a rula script-ul. Cu cât datele de răspuns dvs. și utilizatorii obține de la un macro, cu atât mai bine.

Pentru a efectua o simplă înlocuire a unui alt subșir, puteți utiliza Replace. dar puteți întâlni adesea situații în care necesitatea de a manipula siruri de caractere de cod mai complex. Adăugați următoarea linie imediat înainte de codul de apeluri Contact.Save.

Codul portului de la calculator unde a fost dezvoltat, la alte calculatoare numite o desfășurare și poate juca un rol semnificativ în cadrul proiectului de programare. În această secțiune, vom studia metoda de mișcare a noului macro la alte calculatoare.

În primul rând, un pic de istorie. cod VBA pentru Outlook este conceput ca o dezvoltare personală macro-uri de mediu. Acesta nu este destinat pentru implementare sau distribuție. Astfel, salvați macro în document, așa cum se obișnuiește în alte aplicații de birou, cum ar fi Excel sau Word, nu poți.

Module de import și export

În Outlook, faceți clic pe butonul Macrocomenzi de pe fila Dezvoltator. Ar trebui să vedeți o intrare pentru ... Project1.Contacts.CompanyChange.