*.xlsx"
End With
Dim result As DialogResult = OpenFileDialog1.ShowDialog()
If result = Windows.Forms.DialogResult.OK Then
Try
TextBox1.Text = OpenFileDialog1.FileName
GetExcelSheetNames(TextBox1.Text)
Catch ex As Exception
MsgBox("Error : " & ex.Message)
End Try
End If
End Sub
Kita juga akan mengundang procedure untuk menampilkan data di grid setiap opsi sheet di ListBox1 berganti.
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
LoadExcel2Grid(TextBox1.Text, ListBox1.SelectedItem.ToString)
End Sub
Event TextBox1_TextChanged menjadi parameter pergantian file excel terpilih, jikalau terdapat file excel yang terpilih maka Button2 akan aktif.
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles TextBox1.TextChanged
Button2.Enabled = (Len(TextBox1.Text) > 0)
End Sub
Sub Procedure DoInsert kita buat untuk proses insert data, query yang digunakan di acuan ini yakni insert ignore. Query ini akan mengabaikan proses insert jikalau input dengan primary key yang sama sudah ada.
Sub DoInsert(ByVal strNIK As String, ByVal strNama As String)
Dim myCommand As New MySqlCommand
Dim myAdapter As New MySqlDataAdapter
Dim myData As New DataTable
Dim SQL As String
Try
If conn.State = ConnectionState.Closed Then conn.Open()
SQL = "INSERT IGNORE INTO tblKaryawan (nik, nama) VALUES " & _
"('" & strNIK & "', '" & strNama & "')"
myCommand.Connection = conn
myCommand.CommandText = SQL
myCommand.ExecuteNonQuery()
MsgBox("Data baru tersimpan")
conn.Close()
Catch myerror As MySqlException
MessageBox.Show("Error: " & myerror.Message)
Finally
conn.Dispose()
End Try
End Sub
Event Button2_Click akan melaksanakan proses migrasi, insert data akan diambil dari tblImport.
Private Sub Button2_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles Button2.Click
For i As Integer = 0 To tblImport.Rows.Count - 1
DoInsert(tblImport.Rows(i).Item(0).ToString, _
tblImport.Rows(i).Item(1).ToString)
Next
MsgBox("Proses Import Selesai!")
MySQLDataLoad()
End Sub
Oke tamat dengan code, mari kita coba run.
Data MySQL akan ditampilkan saat form pertama kali diundang, klik tombol Browse... untuk menentukan file excel.
Pilihan sheet akan ditampilkan di ListBox dan Data Excel dari sheet terpilih ditampilkan di grid. Klik tombol Import untuk mengawali proses import.
Ketika proses import simpulan, maka akan muncul pesan konfirmasi:
Hasil yang sudah di import pun ditampilkan di grid Data MySQL
Dan ini isi tabel di MySQL sesudah proses import.
Kode selengkapnya di Part 3 yah.
Click here if you like this article.
Sumber http://rani-irsan.blogspot.com
EmoticonEmoticon