Ruang Excel

Excel application sharing, knowledge of Microsoft Excel, and visual basic application (vba) for education.

Enjoy You'r Visiting

Thursday, December 21, 2017

Trik Import Data Dari Beberapa File Excel

Trik Import Data Dari Beberapa File Excel, Emang bisa Gitu ? langsung Jawab aja deh, Ya..bisa banget gitu loh...!! asal mau belajar dan berusaha memahami trik dan kode scrip vba atau macros serta ada keinginan tuk mengaplikasikannya. Mari gan kita pahami langkah langkanya sebagai berikut :

1.     buat satu file Microsoft excel sebagai file rekap dan beberapa file sebagai sumber data (data1,data2,data3 dst).
2.     pada file rekap yang telah kita buat silahkan pilih menu Developer =>>AciveX control dan pilih Command button. dan masukan scrip vba di bawah ini;

Private Sub CommandButton1_Click()
AmbilData
End Sub
Sub AmbilData()
Dim Src As Workbook
Dim Rkp As Workbook
'On Error GoTo ErrHandler
    Application.ScreenUpdating = False
    
    Dim STRPATH As String
'only allow the user to select one file
Application.FileDialog(msoFileDialogOpen).AllowMultiSelect = False
'make the file dialog visible to the user
intChoice = Application.FileDialog(msoFileDialogOpen).Show
'determine what choice the user made
If intChoice <> 0 Then
'get the file path selected by the user
STRPATH = Application.FileDialog( _
msoFileDialogOpen).SelectedItems(1)
End If
   ' OPEN THE SOURCE EXCEL WORKBOOK IN "READ ONLY MODE".
    Set Rkp = ThisWorkbook
    Set Src = Workbooks.Open(STRPATH, True, True)
    ' GET THE TOTAL ROWS FROM THE SOURCE WORKBOOK.
    Dim iTotalRows As Integer
    iTotalRows = Src.Worksheets("DATAPENTING").Cells(Rows.Count, "F").End(xlUp).Row
    iTotalRows = Src.Worksheets("DATAPENTING").Cells(Rows.Count, "G").End(xlUp).Row
    iTotalRows = Src.Worksheets("DATAPENTING").Cells(Rows.Count, "H").End(xlUp).Row
    'iTotalRows = Src.Worksheets("DATAPENTING").Range("F1:F" & Cells(Rows.Count, "F").End(xlUp).Row).Rows.Count
    ' COPY DATA FROM SOURCE (CLOSE WORKGROUP) TO THE DESTINATION WORKBOOK.
    Dim iCnt As Integer         ' COUNTER.
    For iCnt = 1 To iTotalRows
        Rkp.Worksheets("Rekap").Range("F" & iCnt).Formula = _
            Src.Worksheets("DATAPENTING").Range("F" & iCnt).Formula
        Rkp.Worksheets("Rekap").Range("G" & iCnt).Formula = _
            Src.Worksheets("DATAPENTING").Range("G" & iCnt).Formula
        Rkp.Worksheets("Rekap").Range("H" & iCnt).Formula = _
            Src.Worksheets("DATAPENTING").Range("H" & iCnt).Formula
    Next iCnt
    ' CLOSE THE SOURCE FILE.
    Src.Close SaveChanges:=False           ' FALSE - DON'T SAVE THE SOURCE FILE.
    Set Src = Nothing
    
ErrHandler:
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

  3.Selanjutnya sesuaikan nama sheet pada file rekap dengan “Rekap” begitu juga pada file Data (Data1,Data2,Data3 dst) dengan nama sheet “DATAPENTING”.
    4. Pada file Data (Data1,Data2,Data3 dst)  silahkan pada kolom F, G, H isi dengan data.

    5.Silahkan coba semoga berhasil.

  Contoh file Download di sini

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.