Iklan

Kunci otomatisasi adalah melakukan hal-hal lebih cepat dan lebih mudah daripada yang pernah Anda lakukan sebelumnya. Jadi, apa yang membuat Anda butuh waktu lama? Bagian mana dari beban kerja Anda yang ingin diotomatisasi?

Dalam hal produktivitas, Excel adalah alat yang paling umum digunakan oleh orang untuk hal-hal seperti mengatur keuangan, mengelola proyek, dan memprioritaskan tujuan. Minggu lalu, saya menjelaskan caranya mengotomatiskan IE dengan mengatur grup URL di lembar Excel, dan kemudian menggunakan objek IE di Windows untuk secara otomatis meluncurkan grup URL langsung dari dalam Excel.

Setelah artikel itu, banyak pembaca bertanya bagaimana melakukan hal yang sama di Firefox atau Chrome. Karena baik Firefox maupun Chrome tidak memiliki objek serupa yang disertakan dengan Windows yang dapat digunakan untuk otomatisasi VBA, melakukan tindakan yang sama pada browser lain memerlukan langkah ekstra. Langkah itu adalah pemasangan Selenium VBA - pembungkus Windows COM untuk Selenium.

instagram viewer

Ini memungkinkan Anda untuk melakukan panggilan dari aplikasi apa pun yang mendukung VBA untuk membuka browser - bukan hanya IE - dan mengontrol sesi browser itu. Ini adalah alat otomatisasi yang kuat yang sangat umum digunakan sehingga banyak vendor browser populer memasukkan Selenium sebagai bagian asli dari browser mereka. Menggunakannya dalam aplikasi otomasi Anda pasti akan didukung untuk tahun-tahun mendatang.

Mengotomatiskan Firefox dan Chrome dengan Selenium

Sebelum Anda memulai proyek ini, Anda harus mengunduh dan menginstal pembungkus Selenium VBA. Kemudian, sama seperti yang saya bahas di artikel tentang mengotomatisasi IE, untuk menulis VBA apa pun di Excel, Anda harus masuk ke mode desain dan melihat kode. Jika Anda belum pernah melakukan ini sebelumnya, Anda hanya perlu masuk ke item menu "Pengembang", dan klik Mode Desain. Klik tombol "Sisipkan", klik tombol ActiveX dan tarik ke lembar Anda di suatu tempat. Setelah Anda selesai melakukannya, klik tombol dan kemudian klik "Lihat Kode".

selenium1

Di jendela editor kode, di kiri bawah, pastikan untuk mengubah "Nama" dan "Keterangan" untuk mencerminkan untuk apa tombol itu. Dalam hal ini, tombolnya adalah untuk membuka daftar URL yang Anda daftarkan di spreadsheet. Dalam kasus saya, saya hanya menyebutnya cmdLoadURLs, dan membuat judul "Muat URL" (ini yang muncul di tombol).

selenium1b

Selanjutnya, Anda perlu mengaktifkan Selenium Wrapper dengan mengklik menu Tools, lalu klik "Referensi", dan kemudian ramban ke bawah ke referensi yang disebut "SeleniumWrapper Type Library". Centang kotak referensi itu dan kemudian klik OK.

selenium2

Anda sekarang siap untuk mulai menulis kode otomatisasi browser menggunakan Selenium Wrapper!

Fungsionalitas Selenium Wrapper

Selenium VBA Wrapper memberi Anda lebih banyak fungsionalitas daripada yang bisa saya tunjukkan pada Anda dalam satu artikel ini. Anda dapat melihat seberapa banyak yang tersedia di luar WebDriver, dengan mendefinisikan objek Selenium sebagai “SeleniumWrapper Baru”. Saat Anda mengetik periode, itu akan drop down semua elemen dari jenis objek yang dapat Anda kontrol, seperti gambar browser, file PDF, tombol keyboard, dan banyak lagi.

selenium3

Contoh kode ini akan menggunakan WebDriver. Setelah Anda menggunakan objek Selenium WebDriver dalam kode Anda dan mengetik periode, itu akan drop down daftar metode dan properti yang sangat panjang yang dapat Anda gunakan untuk mengotomatiskan browser web Anda.

selenium4

Diperlukan waktu untuk mempelajari semua yang tersedia, tetapi Google dapat memberikan beberapa contoh bagus, di belakang sampel yang tersedia di Halaman Kode Google. Sayangnya, sejauh yang saya tahu, tidak ada panduan langsung di sana untuk menggunakan Selenium, tetapi saya akan berterima kasih kepada pembaca yang dapat menyediakan sumber daya apa pun!

Menulis Kode Selenium VBA Anda

Dalam contoh ini, seperti pada artikel IE, saya telah membuat daftar URL yang ingin saya buka di Firefox secara otomatis. Saya kemudian membuat tombol seperti yang dijelaskan di bagian pertama artikel ini.

selenium5

Kode di belakang tombol itu mudah, tetapi saya akan menjelaskan apa yang dilakukan setiap bagian. Pertama, Anda perlu meluncurkan aplikasi Firefox. Metode "selenium.start" akan melakukannya. Metode setTimeout dan setImplicitWait tidak penting, tetapi dapat mencegah aplikasi Anda mengunci selamanya jika browser tidak merespons karena alasan tertentu.

Dim selenium Sebagai SeleniumWrapper Baru. WebDriver. Dim FF Sebagai Objek. Dim intRowPosition As Integer. Tombol redup Sebagai SeleniumWrapper.keys baru selenium. Mulai "firefox", " https://www.google.com" selenium.setTimeout ("120000") selenium.setImplicitWait (5000) intRowPosition = 2. selenium. Buka Sheet1.Range ("A" & intRowPosition)

Beberapa baris terakhir mengatur baris data Excel untuk dibaca (baris dua, tempat URL pertama disimpan di spreadsheet), dan kemudian lakukan metode “selenium.open” untuk membaca URL dari spreadsheet itu, dan buka di Firefox.

selenium7

Bagian kode selanjutnya menambah penunjuk baris dan membaca URL berikutnya dalam daftar. Jika sel tidak kosong, maka ia menggunakan metode SendKeys untuk meluncurkan tab baru di Firefox, membaca URL berikutnya dari penjualan itu, dan membuka URL di tab baru itu.

intRowPosition = intRowPosition + 1 While Sheet1.Range ("A" & intRowPosition) <> vbNullString selenium. Kunci SendKeys. Kontrol & "t" selenium. Buka Sheet1.Range ("A" & intRowPosition) intRowPosition = intRowPosition + 1. Wend Set IE = Tidak Ada

Script akan berulang melalui seluruh daftar Anda sampai semua URL terbuka di tab mereka sendiri. Ini browser setelah loop melewati kedua kalinya dan membuka MUO di tab baru.

selenium8

Jika Anda ingin menggunakan kode ini untuk Chrome, yang perlu Anda lakukan adalah mengubah baris “selenium. Mulai "firefox" "sebagai" chrome ".

Sekarang Buat Script Anda Sendiri

Seperti yang saya sebutkan di atas, cara terbaik untuk mempelajari kekuatan Selenium Wrapper adalah dengan mengetik "selenium" dalam kode Anda, tekan periode dan cukup telusuri daftar yang sangat panjang dari properti yang tersedia dan metode. Misalnya, Anda dapat menggunakan properti .URL untuk mendapatkan URL tab yang saat ini terbuka di Firefox atau Chrome.

selenium9

Seperti yang Anda lihat, ada banyak lagi hal yang dapat Anda lakukan yang melampaui ruang lingkup artikel ini. Tapi bereksperimen dan bersenang-senanglah. Untungnya, sebagian besar fungsi akan memunculkan teks bantuan yang menunjukkan kepada Anda parameter apa yang diharapkan setiap fungsi. Itu bisa sangat membantu dalam menentukan cara menggunakannya.

Untuk Anda proyek skrip selanjutnya, bagaimana membuat aplikasi sederhana Anda sendiri dengan VBA Bagaimana Anda Dapat Membuat Aplikasi Sederhana Anda Sendiri Dengan VBAIngin tahu cara membuat aplikasi VBA Anda sendiri untuk menyelesaikan masalah? Gunakan tips ini untuk membangun perangkat lunak VBA Anda sendiri. Baca lebih banyak ?

Ryan memiliki gelar BSc di bidang Teknik Listrik. Dia telah bekerja 13 tahun di bidang teknik otomasi, 5 tahun di bidang TI, dan sekarang adalah seorang Insinyur Aplikasi. Mantan Redaktur Pelaksana MakeUseOf, dia berbicara di konferensi nasional tentang Visualisasi Data dan telah ditampilkan di TV dan radio nasional.