Vba: cara mengekstrak data dari buku kerja lain


Anda bisa menggunakan sintaks berikut di VBA untuk mengekstrak data dari buku kerja lain:

 SubExtractData ()
    
    'turn off screen updates to make this run faster
    Application.ScreenUpdating = False
    
    'specify workbook we want to extract data from
    Set wb = Workbooks.Open(" C:\Users\bobbi\OneDrive\Desktop\my_data.xlsx ")
    
    'extract all data from Sheet1 and paste as new sheet in current workbook
    wb.Sheets(" Sheet1 ").Copy After:=ThisWorkbook.Sheets(1)
    
    'do not save any changes to workbook we extract data from
    wb.Close SaveChanges:=False
    
    'turn screen updating back on
    Application.ScreenUpdating = True
    
End Sub

Makro khusus ini membuka buku kerja bernama my_data.xlsx yang terletak di lokasi berikut:

C:\Users\Bob\Desktop\my_data.xlsx

Kemudian menyalin semua data dari sheet yang disebut Sheet1 ke dalam buku kerja ini dan menyalinnya ke dalam sheet langsung setelah sheet pertama di buku kerja kita yang sedang aktif.

Catatan : Baris Application.ScreenUpdating = False memberitahu VBA untuk menjalankan proses ini di latar belakang agar berjalan lebih cepat.

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Ekstrak data dari buku kerja lain menggunakan VBA

Katakanlah kita membuka buku kerja Excel berikut dan kita melihatnya:

Sekarang anggaplah kita mempunyai buku kerja lain yang ditutup tetapi berisi data berikut:

Kita bisa menggunakan makro berikut untuk mengekstrak data dari lembar 1 buku kerja tertutup ini dan menempelkannya ke lembar baru langsung setelah lembar pertama buku kerja kita yang sedang terbuka:

 SubExtractData ()
    
    'turn off screen updates to make this run faster
    Application.ScreenUpdating = False
    
    'specify workbook we want to extract data from
    Set wb = Workbooks.Open(" C:\Users\bobbi\OneDrive\Desktop\my_data.xlsx ")
    
    'extract all data from Sheet1 and paste as new sheet in current workbook
    wb.Sheets(" Sheet1 ").Copy After:=ThisWorkbook.Sheets(1)
    
    'do not save any changes to workbook we extract data from
    wb.Close SaveChanges:=False
    
    'turn screen updating back on
    Application.ScreenUpdating = True
    
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Perhatikan bahwa data dari buku kerja tertutup telah diekstraksi dan ditempelkan sebagai lembar baru ke dalam buku kerja kami yang sedang aktif.

Jangan ragu untuk mengganti nama sheet baru karena identik dengan sheet saat ini.

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di VBA:

VBA: Cara menghitung jumlah lembar dalam buku kerja
VBA: cara menyisipkan banyak kolom
VBA: cara menyisipkan banyak baris

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *