Pernahkah anda berpikir untuk mengambil data dari satu workbook kemudian memasukannya kedalam workbook lain? Ambil contoh anda ingin mengambil nilai seorang siswa kemudian memasukkannya pada workbook rekap nilai. Atau anda ingin memasukkan suatu baris data kedalam workbook khusus. Pertanyaan tersebut dapat anda realisasikan dengan melakukan langkah-langkah berikut sebagai jawabannya:
- Buka Microsoft Excel
- Langsung saja buka Alt + F11 untuk menampilkan code editor VBA, atau klik perintah View Code di Menu Developer.
- Buat sebuah module dan isi dengan kode berikut
Sub AmbilNilai()
Dim wb1 As Workbook, wb() As Variant
Dim wb1Name As String, Lr As Integer, nilai As Variant, wb2Name As String
wb1Name = ThisWorkbook.Name
Set wb1 = ActiveWorkbook
Lr = Range("A" & Rows.Count).End(xlUp).Row + 1
On Error GoTo er
wb = Application.GetOpenFilename("Excel Files (*.xls*), (*.xls*)", , , , True)
For i = 1 To UBound(wb)
Range("A" & Lr).Value = wb(i)
Lr = Lr + 1
Next i
Lr = 2
Do Until IsEmpty(Range("A" & Lr))
Application.DisplayAlerts = False
Workbooks.Open (Range("A" & Lr))
wb2Name = ActiveWorkbook.Name
nilai = ActiveSheet.Range("A1").Value
If nilai = "" Then
nilai = "tidak ada data"
End If
Workbooks(wb2Name).Close False
Workbooks(wb1Name).Activate
Sheet1.Range("B" & Lr) = nilai
Lr = Lr + 1
Loop
MsgBox "Data Sudah di update"
Exit Sub
er:
End Sub - Buat sebuah tombol (anda dapat menggunakan shape atau command button)
- Assign tombol dengan macro kode diatas
- Buatlah rancangan tabel sebagai berikut:
Rancangan tabel - Akan muncul dialog box, pilih file workbook yang ingin anda ambil data didalamnya.
- Karena pada kode diatas sudah didefine untuk mengambil data pada sel "A1", maka data workbook yang anda pilih tadi akan diambil datanya pada sel "A1" kedalam kolom B.
Itulah cara mengambil nilai dari workbook lain dengan menggunakan Macro VBA Excel. Jika anda mengalami kesulitan dalam memahami kode atau mempraktikannya, anda dapat menanyakannya di kolom komentar dibawah. Terimakasih.
Kredit: Heru Monas Prasetyo