Mengambil Data Dari Workbook Lain

  1. 2 bulan yang lalu

    Salam,
    Mohon bantuannya gimana caranya buat VBA, Mengambil Data lebih dari 1 workbook dari Workbook Lain, terima kasih.
    Salam

    @Aupe

    sorry baru bisa menjawab, lagi banyak kesibukan :)

    bisa aja dengan metode array. untuk contohnya coba cek file terlampir. jika sudah sesuai yg diinginkan silahkan dikembangkan sendiri

    [attachment:5ec2436fc806e]

  2. contoh yg di maksud

  3. 9 minggu lalu

    @Aupe

    terlampir contohnya

    Note :

    1. filenya di ekstrak dulu ya
    2. pastikan semua file dalam 1 folder
    3. pastikan nama sheet adalah "data" untuk sheet pada file-file yang akan diambil / disalin datanya
    4. pastikan nama sheet adalah "input" untuk file targetnya

    kalau berhasil, harusnya tampilannya seperti ini :
    ambildata.gif

  4. Keren, terima kasih mas @manweljs_
    kalau mau tambahin saat klik Ambil Data muncul seperti tombol browse pilih file gitu, jadi kita bisa pilih mau ambil semua data atau pilih sebagian saja, bisa mas, terima kasih sebelumnya mas...

  5. atau lebih tepat ini contohnya, terima kasih...

  6. 8 minggu lalu

    manweljs_

    Mei 18 Terverifikasi Jawaban Terpilih + 10.044 Poin

    @Aupe

    sorry baru bisa menjawab, lagi banyak kesibukan :)

    bisa aja dengan metode array. untuk contohnya coba cek file terlampir. jika sudah sesuai yg diinginkan silahkan dikembangkan sendiri

    ambildata2.gif

  7. Terima kasih mas @manweljs_ sangat mebantu, sedikit ada kendala mas, gimana klo tempat copy (sheet inputnya) kolomnya tidak berurutan.

  8. @Aupe ...gimana klo tempat copy (sheet inputnya) kolomnya tidak berurutan.

    Tidak berurutan bagaimana?

  9. Sudah bisa mas @manweljs_ terima kasih banyak atas bantuannya, setalah wara wiri mencari, (maksundya data yang di copy ke sheet input lompat2 misalkan kolom A, C, E gitu)

  10. Sama-sama mas @Aupe :)

  11. 6 minggu lalu

    Mas @manweljs_ bisa dibantu, bagaimana memunculkan msgbox Gagal copy data..!
    hal ini dikarenakan semisal source yg di panggil tidak sesua dengan format excel atau judul sheetnya.
    terima kasih

  12. Di sunting 6 minggu lalu oleh manweljs_

    @Aupe

    kalau masalah error handling gini bisa gak kelar2 nanti diskusinya :)

    jadi gini, idenya adalah menggunakan error trap pada saat user mengambil file, periksa nama sheetnya, jika nama sheetnya tidak cocok maka pasti akan terjadi error, nah saat terjadi error inilah tampilkan pesan gagal setelah pesan gagal ditampilkan langsung exit sub aja.

    contohnya pada file yang saya lampirkan :

    ...
    On Error Resume Next 
    Set ws = xwb.Worksheets("data") ' <-- disini jika tidak ada nama sheet "data" pasti akan terjadi error
    If Err.Number <> 0 Then '<--  jika terjadi error maka err.number pasti bukan 0
    MsgBox "gagal" '<-- karena kriteria if terpenuhi maka akan menampilkan pesan ini
    Exit Sub '<-- kemudian langsung exit sub saat error terjadi, artinya baris skrip selanjutnya tidak di proses
    ...

  13. Siap :), Terima kasih mas @manweljs_ sukses terus mas

  14. @manweljs_ @Aupe

    sorry baru bisa menjawab, lagi banyak kesibukan :)

    bisa aja dengan metode array. untuk contohnya coba cek file terlampir. jika sudah sesuai yg diinginkan silahkan dikembangkan sendiri

    [attachment:5ec2436fc806e]

    gan saya tertarik dengan bahasan yang ada disini..
    bolehkah saya join?

    ingin belajar lebih tentang VBA khususnya import data dari excel ini..

    saya udah coba buka file dari apa yang udah dibuat mas @manweljs_,
    saya ingin bertanya, tentang Range("B" & x) yang ada di dalam codenya, itu mengacu pada posisi paste yah gan?
    bisa tolong jelaskan kenapa hasil yang di-paste nya berada di B3?
    terima kasih

  15. oh iya, hasil yang telah dibuat dari VBA, memang tidak bisa di undo yah gan? atau ada cara supaya apayang udah di-perform dari VBA nya bisa di-undo?

  16. manweljs_

    Jun 5 Terverifikasi + 10.044 Poin
    Di sunting 6 minggu lalu oleh manweljs_

    @Shinzuriki

    ...
    saya ingin bertanya, tentang Range("B" & x) yang ada di dalam codenya, itu mengacu pada posisi paste yah gan?
    ...

    betul

    bisa tolong jelaskan kenapa hasil yang di-paste nya berada di B3?

    karena baris skrip ini :

    ...
    x = .Range("B" & Rows.Count).End(xlUp).Row + 1
    ...


    fungsi baris ini adalah menentukan baris terakhir di kolom B, jadi nilai x adalah nilai baris terakhir ditambahkan 1 (...Row + 1). jika baris terakhir adalah baris 2 maka akan ditambahkan 1 = 3.
    sehingga nilai Range("B" & x) = Range("B3")

    oh iya, hasil yang telah dibuat dari VBA, memang tidak bisa di undo yah gan? atau ada cara supaya apayang udah di-perform dari VBA nya bisa di-undo?

    setau saya tidak ada cara melakukan undo setelah proses makro dijalankan. trik satu-satunya adalah save file sebelum makro dijalankan, jika terjadi kesalahan tinggal re-open lagi.

  17. 5 minggu lalu

    @manweljs_ @Shinzuriki

    betul

    karena baris skrip ini :

    ...
    x = .Range("B" & Rows.Count).End(xlUp).Row + 1
    ...


    fungsi baris ini adalah menentukan baris terakhir di kolom B, jadi nilai x adalah nilai baris terakhir ditambahkan 1 (...Row + 1). jika baris terakhir adalah baris 2 maka akan ditambahkan 1 = 3.
    sehingga nilai Range("B" & x) = Range("B3")

    setau saya tidak ada cara melakukan undo setelah proses makro dijalankan. trik satu-satunya adalah save file sebelum makro dijalankan, jika terjadi kesalahan tinggal re-open lagi.

    nice infonya gann, thank you banget yahhhh

  18. @manweljs_ @Aupe

    kalau masalah error handling gini bisa gak kelar2 nanti diskusinya :)

    jadi gini, idenya adalah menggunakan error trap pada saat user mengambil file, periksa nama sheetnya, jika nama sheetnya tidak cocok maka pasti akan terjadi error, nah saat terjadi error inilah tampilkan pesan gagal setelah pesan gagal ditampilkan langsung exit sub aja.

    contohnya pada file yang saya lampirkan :
    ... On Error Resume Next Set ws = xwb.Worksheets("data") ' <-- disini jika tidak ada nama sheet "data" pasti akan terjadi error If Err.Number <> 0 Then '<-- jika terjadi error maka err.number pasti bukan 0 MsgBox "gagal" '<-- karena kriteria if terpenuhi maka akan menampilkan pesan ini Exit Sub '<-- kemudian langsung exit sub saat error terjadi, artinya baris skrip selanjutnya tidak di proses ...

    gan mau tanya, mengenai If error ini, saya udah coba masukan script nya tapi kenapa gk bisa yah?
    kira2 gimana yah pake code ini?

    terima kasih

  19. Di sunting 5 minggu lalu oleh manweljs_

    @Shinzuriki ...saya udah coba masukan script nya tapi kenapa gk bisa yah?...

    saya juga gak tau kenapa, karena saya gak tau skrip yg anda buat itu seperti apa.

  20. 4 minggu lalu

    @manweljs_ saya juga gak tau kenapa, karena saya gak tau skrip yg anda buat itu seperti apa.

    sorry baru bales gan

    skrip nya sama seperti yang agan lampirkan di atas gan

 

atau Mendaftar untuk ikut berdiskusi!