Di artikel sebelumnya kita pernah bembuat fungsi untuk mengeksport data dari datagridview kedalam bentuk excel file. Di artikel kali ini maka kita akan membuat sebuah fungsi untuk memimport data excel ke dalam datagridview. Libaray yang kita gunakan juga sama seperti untuk mengexport data yaitu closedxml. Oke kita langsung saja ke tutorialnya.
advertisement
- Silahkan download library closedxml seperti pada artikel cara mengexport datagridview ke dalam excel file, melalui nuget package manager di visual studio.
- Buat sebuah excel file dengan baris dan kolomnya dengan extensi .xlsx. Contohnya seperti gambar berikut.
- Kemudian kalian buat sebuah module dengan nama ModuleHelper dan copy paste code berikut di dalamnya.
Imports System.Text.RegularExpressions Imports ClosedXML.Excel Module ModuleHelper Sub ImportExcelToDgv(ByVal dgv As DataGridView, sheetName As String, startCell As String, endCell As String) Try Dim workbook As XLWorkbook Dim ofd As New OpenFileDialog ofd.Filter = "Excel files (*.xlsx, *.xls) | *.xlsx; *.xls" If ofd.ShowDialog() = System.Windows.Forms.DialogResult.OK Then workbook = New XLWorkbook(ofd.FileName) Dim wsheet = workbook.Worksheet(sheetName) Dim startRow = CInt(System.Text.RegularExpressions.Regex.Replace(startCell, "[^\d]", "")) Dim endRow = CInt(System.Text.RegularExpressions.Regex.Replace(endCell, "[^\d]", "")) Dim startColumn = wsheet.Row(startRow).Cell(Regex.Replace(startCell, "\d+$", "")).Address.ColumnNumber - 1 Dim endColumn = wsheet.Row(startRow).Cell(Regex.Replace(endCell, "\d+$", "")).Address.ColumnNumber - 1 '------Get Value Data Dim dt As New DataTable() For i = startColumn To endColumn Dim dc As New DataColumn() dc.ColumnName = wsheet.Rows(startRow).Cells(i).Value.ToString dc.DataType = GetType(String) dt.Columns.Add(dc) Next Dim ctr = startRow + 1 While ctr <> endRow Dim dr As DataRow = dt.NewRow For i = startColumn To endColumn dr(i) = wsheet.Rows(ctr).Cells(i).Value Next dt.Rows.Add(dr) ctr = ctr + 1 End While dgv.DataSource = dt End If Catch ex As Exception MsgBox(ex.Message.ToString) End Try End Sub End Module
Untuk mengimport data dari excel file kita menggunakan Mehtod ImportExcelToDgv dengan beberapa parameter masukan yaitu.
- DataGridView yang akan digunakan untuk menampilkan data dari excel
- Nama Sheet yang dari file excel yang akan di ambil datanya
- Cell pertama dari data yang akan di ambil.
- Cell terakhir dari data yang akan di ambil.
Contoh cara penggunakan sebagai berikut.
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
ImportExcelToDgv(DataGridView1, "Sheet1", "A1", "I11")
End Sub
advertisement
Sekian dulu tutorial cara import file excel ke dalam datagridview. Jangan lupa di share jika kalian merasa artikel ini bermanfaat, dan jangan lupa tinggalkan jejak dengan berkomentar dibawah ini. File projectnya bisa kalian download di sini.
Silahkan berkomentar dengan baik dan bijak!