Minggu, 07 Oktober 2018

[belajar-excel] Digest Number 4618

3 Messages

Digest #4618

Messages

Sun Oct 7, 2018 1:23 am (PDT) . Posted by:

rafael_ari

Assalamualaikum para master dan teman-teman sekalian, saya mau bertanya mengenai cara otomatis duplikat atau copy paste tabel dengan macro, untuk lebih jelas file sudah saya lampirkan

Sun Oct 7, 2018 5:54 am (PDT) . Posted by:

"Mr. Kid" nmkid.family@ymail.com

Wa'alaikumussalam wr wb

Harus pakai VBA ya ?
Baiklah.
File terlampir.

Wassalamu'alaikum wr wb
Kid

On Sun, Oct 7, 2018 at 3:24 PM rafael_ari@yahoo.com [belajar-excel] <
belajar-excel@yahoogroups.com> wrote:

>
>
> Assalamualaikum para master dan teman-teman sekalian, saya mau bertanya
> mengenai cara otomatis duplikat atau copy paste tabel dengan macro, untuk
> lebih jelas file sudah saya lampirkan
>
>

Sun Oct 7, 2018 9:58 pm (PDT) . Posted by:

"Zainul Ulum" zainul_ulum

Rekan Be-Excel,saya membuat coding sederhana di vba-excel untuk otomasi pengisian form di internet explorer dengan menggunakan object library/reference: microsoft interner control.
Salah satu kendalanya adalah untuk memastikan bahwa object/ internet element dalam form di internet explorer adalah siap (ready) untuk diisi dari data yang saya ambil dari spead sheet excel.
Berdasarkan online help yang saya baca, untuk mengecek bahwa object sudah terunduh sempurna adalah dengan  menggunakan nilai property readystate. Jika nilai readystate bernilai = 4 , maka object di internet explorer sudah ter-loaded dan siap untuk diisi sedangkan untuk menunggu readystate=4 dilakukan looping sampai didapat nilai property=4 (ready). 
Akan tetapi dalam implementasinya, terutama jika internet connectionnya jelek, saat menggunakan looping (do....loop atau while....wend) ternyata object belum siap atau belum ready. Untuk memaksa object menjadi ready, saya menambahkan tambahan waktu tunggu / waktu looping Application.Wait dengan tambahan nilai tunggu 1 detik ( sDelay = Format(TimeValue(sDelay) + TimeValue("00:00:" & Format(i, "00")), "hh:mm:ss")) , sampai object benar-benar siap..
Kelemahan dari penambahan application.wait tersebut adalah proses pengisian form akan lama karena tiap loop ditambahkan waktu. tunggu.
di bawah, contoh code yang telah saya buat dengan tambahan proses delay (application.wat). Mohon bantuan atau masukan dari teman-teman yang pengalaman di "web scrapping"
Wassalam,-zainul
'==========================================================================Private Function SetAttributeWithDelay(objBrowser As InternetExplorer, ByVal sDelay As String, _    ByVal sElemenID As String, ByVal sAttrKey As String, ByVal vValue As Variant) As Boolean        Dim oHTMLDoc As HTMLDocument    Dim oHTML_Element As Object    Dim i As Integer    Dim bol As Boolean    SetAttributeWithDelay = True    i = -1    Do        i = i + 1        sDelay = Format(TimeValue(sDelay) + TimeValue("00:00:" & Format(i, "00")), "hh:mm:ss")        Do ' Wait till the Browser is loaded            Application.Wait (Now + TimeValue(sDelay)) '--->NOTE: dicoba pakai ini berhasil tetapi proses lama        Loop Until objBrowser.readyState = 4 'READYSTATE_COMPLETE                'While objBrowser.readyState <> 4 Or objBrowser.Busy: DoEvents: Wend--->note: dicoba pakai ini tidak berhasil            Set oHTMLDoc = objBrowser.document            On Error Resume Next            Set oHTML_Element = oHTMLDoc.getElementById(sElemenID)            If Err.Number Then                Err.Clear                'Application.Wait (Now + TimeValue(sDelay))'---> note:dicoba pakai ini tidak berhasil                'oHTML_Element = oHTMLDoc.getElementById(sElemenID)            End If            If i = 10 Then                SetAttributeWithDelay = False                Exit Function            End If    Loop Until Not oHTML_Element Is Nothing    Call oHTML_Element.setAttribute(sAttrKey, vValue)End Function
============================================================
Pojok Lowongan Kerja yang disediakan milis :
http://milis-belajar-excel.1048464.n5.nabble.com/Pojok-Lowongan-Kerja-f5725753.html
*** Posting lowongan kerja : ke link tersebut dan klik New Topic
============================================================
bergabung ke milis (subscribe), kirim mail kosong ke: belajar-excel-subscribe@yahoogroups.com
posting ke milis, kirimkan ke: belajar-excel@yahoogroups.com
berkunjung ke web milis : http://tech.groups.yahoo.com/group/belajar-excel/messages
melihat file archive / mendownload lampiran : http://www.mail-archive.com/belajar-excel@yahoogroups.com/
atau (sejak 25-Apr-2011) bisa juga di : http://milis-belajar-excel.1048464.n5.nabble.com/
menghubungi moderators & owners: belajar-excel-owner@yahoogroups.com
keluar dari membership milis (UnSubscribe), kirim mail kosong ke : belajar-excel-unsubscribe@yahoogroups.com
---------------------------------------------------------------------

Tidak ada komentar:

Posting Komentar