Mengambil Nilai dari Workbook Lain Dengan VBA Excel


Mengambil Nilai dari Workbook Lain Dengan VBA Excel
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:
  1. Buka Microsoft Excel
  2. Langsung saja buka Alt + F11 untuk menampilkan code editor VBA, atau klik perintah View Code di Menu Developer.
  3. 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
  4. Buat sebuah tombol (anda dapat menggunakan shape atau command button)
  5. Assign tombol dengan macro kode diatas
  6. Buatlah rancangan tabel sebagai berikut:
    Mengambil Nilai dari Workbook Lain Dengan VBA Excel
    Rancangan tabel
  7. Akan muncul dialog box, pilih file workbook yang ingin anda ambil data didalamnya.
  8. 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