Publicitate

Cheia automatizării este să faci lucrurile mai repede și mai ușor decât ai făcut până acum. Deci, ce îți ia mult timp să faci? Ce parte din volumul dvs. de muncă doriți să automatizați?

În ceea ce privește productivitatea, Excel este cel mai frecvent instrument folosit de oameni pentru lucruri precum organizarea finanțelor, gestionarea proiectelor, și prioritizarea obiectivelor. Săptămâna trecută, am descris cum să automatizăm IE prin configurarea grupurilor de adrese URL în foi Excel și apoi folosirea obiectului IE în Windows pentru a automatiza lansarea grupurilor de adrese URL direct din interiorul Excelului.

În urma acelui articol, mulți cititori au întrebat cum să facă același lucru în Firefox sau Chrome. Întrucât nici Firefox, nici Chrome nu au un obiect similar inclus cu Windows care poate fi utilizat pentru automatizarea VBA, efectuarea aceluiași tip de acțiuni pe celelalte browsere necesită un pas suplimentar. Acest pas este instalarea Selenium VBA - un ambalaj Windows COM pentru Selenium.

instagram viewer

Vă permite să efectuați apeluri de la orice aplicație care acceptă VBA pentru a deschide un browser - nu doar IE - și pentru a controla sesiunea de browser. Este un instrument de automatizare puternic, care este atât de des utilizat încât mulți furnizori de browser populare încorporează Selenium ca parte nativă a browserului lor. Utilizarea acestuia în aplicațiile dvs. de automatizare este sigur că va fi acceptată pentru anii următori.

Automatizarea Firefox și Chrome cu Selenium

Înainte de a începe acest proiect, va trebui să descărcați și să instalați învelișul Selenium VBA. Apoi, la fel cum am discutat în articolul din automatizarea IE, pentru a scrie orice VBA în Excel, trebuie să intrați în modul de proiectare și să vizualizați codul. Dacă nu ați făcut niciodată acest lucru înainte, trebuie doar să accesați elementul de meniu „Dezvoltator” și să faceți clic pe Modul design. Faceți clic pe butonul „Inserare”, faceți clic pe butonul ActiveX și trageți-l pe foaia dvs. undeva. După ce ați făcut acest lucru, faceți clic pe buton, apoi faceți clic pe „Vizualizare cod”.

selenium1

În fereastra editorului de coduri, în partea stângă jos, asigurați-vă că schimbați atât „Nume”, cât și „Legenda” pentru a reflecta pentru ce este butonul. În acest caz, butonul va fi pentru a deschide lista adreselor URL pe care le-ați enumerat în foaia de calcul. În cazul meu, am numit-o doar cmdLoadURLs și am făcut din titlul „Încărcați adrese URL” (asta apare pe buton).

selenium1b

Apoi, trebuie să activați Selenium Wrapper făcând clic pe meniul Instrumente, apoi faceți clic pe „Referințe”, apoi răsfoiți la referința numită „SeleniumWrapper Type Library”. Bifați caseta de referință, apoi faceți clic pe OK.

selenium2

Acum sunteți gata să începeți să scrieți codul automatizării browserului utilizând selenium Wrapper!

Funcționalitatea Selenium Wrapper

Învelișul Selenium VBA vă oferă mult mai multe funcționalități decât vă voi putea arăta în acest articol. Puteți vedea cât de mult este disponibil dincolo de doar WebDriver, definind obiectul Selenium drept „New SeleniumWrapper”. Când tastați perioada, aceasta va derula toate elementele tipurilor de obiecte pe care le puteți controla, cum ar fi imaginile browserului, fișiere PDF, tastele tastaturii și multe altele.

selenium3

Acest cod de exemplu va fi folosit WebDriver. După ce utilizați obiectul Selenium WebDriver în codul dvs. și introduceți perioada, acesta va derula o listă foarte lungă de metode și proprietăți pe care le puteți utiliza pentru a automatiza browserul dvs. Web.

selenium4

Poate dura ceva pentru a afla tot ceea ce este disponibil, dar Google poate oferi câteva exemple bune, în spatele eșantioanelor disponibile la Pagina Cod Google. Din păcate, din câte știu, nu există niciun ghid simplu pentru utilizarea Seleniumului, dar aș fi recunoscător pentru cititorii care ar putea furniza resurse!

Scrierea codului dumneavoastră de seleniu VBA

În acest exemplu, ca în articolul IE, am creat o listă de adrese URL pe care vreau să le deschid automat în Firefox. Am creat apoi butonul așa cum este descris în prima parte a acestui articol.

selenium5

Codul din spatele butonului este simplu, dar voi explica ce face fiecare secțiune. În primul rând, trebuie să lansați aplicația Firefox. Metoda „selenium.start” va face asta. Metodele setTimeout și setImplicitWait nu sunt critice, dar pot împiedica aplicația să se blocheze pentru totdeauna dacă browser-ul nu răspunde din anumite motive.

Seleniu Dim ca nou SeleniumWrapper. WebDriver. Dim FF ca obiect. Dim intRowPosition ca număr întreg. Tastele Dim Ca nou SeleniumWrapper.keys seleniu. Porniți „firefox”, „ https://www.google.com" selenium.setTimeout ("120000") selenium.setImplicitWait (5000) intRowPosition = 2. seleniu. Deschideți Sheet1.Range („A” și intRowPosition)

Ultimele două linii au setat rândul de date Excel de citit (rândul doi, în care prima adresă URL este stocată în foaie de calcul), apoi execută metoda „selenium.open” pentru a citi adresa URL din foaia de calcul și deschide-o în Firefox.

selenium7

Următoarea secțiune de cod crește indicatorul rând și citește următoarea adresă URL din listă. Dacă celula nu este goală, atunci folosește metoda SendKeys pentru a lansa o nouă filă în Firefox, citește următoarea adresă URL din acea vânzare și deschide URL-ul în noua filă.

intRowPosition = intRowPosition + 1 În timp ce Sheet1.Range ("A" și intRowPosition) <> vbNullString seleniu. Tastele SendKeys. Control și seleniu „t”. Deschideți foaia1.Range ("A" și intRowPosition) intRowPosition = intRowPosition + 1. Wend Set IE = Nimic

Scriptul se va bucla de întreaga listă până când toate adresele URL vor fi deschise în propriile file. Iată browserul după ce bucla a trecut prin a doua oară și a deschis MUO într-o nouă filă.

selenium8

Dacă doriți să utilizați acest cod pentru Chrome, tot ce trebuie să faceți este să schimbați linia „seleniu”. În schimb, porniți „firefox” în „chrome”.

Acum Creează-ți propriul script

După cum am menționat mai sus, cel mai bun mod de a învăța puterea selenium Wrapper este să tastați „seleniu” în codul dvs., atingeți perioada și pur și simplu parcurgeți lista foarte lungă de proprietăți disponibile și metode. De exemplu, puteți utiliza proprietatea .URL pentru a obține adresa URL a filei deschise în Firefox sau Chrome.

selenium9

După cum puteți vedea, există multe alte lucruri pe care le puteți face, care depășesc scopul acestui articol. Dar experimentează și distrează-te. Din fericire, majoritatea funcțiilor vor ajuta textul de ajutor care vă arată ce parametri așteaptă fiecare funcție. Acest lucru poate ajuta foarte mult când vine vorba de a descoperi modul de utilizare.

Pentru tine următorul proiect de script, ce zici crearea propriei aplicații simple cu VBA Cum îți poți face propria aplicație simplă cu VBADoriți să știți cum să vă faceți propria aplicație VBA pentru a rezolva problemele? Utilizați aceste sfaturi pentru a crea propriul software VBA. Citeste mai mult ?

Ryan are o diplomă de licență în inginerie electrică. A lucrat 13 ani în domeniul ingineriei automatizării, 5 ani la IT, iar acum este inginer pentru aplicații. Fost redactor manager al MakeUseOf, a vorbit la conferințele naționale despre vizualizarea datelor și a fost prezentat la TV și radio naționale.