2016-05-30 3 views
-2

У меня есть таблица Excel, которая фактически рассчитывает кредит ... Если мы вводим сумму и нет. лет, он дает нам список всех EMI, которые будут сделаны в ближайшие годы.Импорт таблицы Excel в vb.net

Мой босс хочет интегрировать этот лист Excel в форму vb.net .... Как я могу это сделать? Пожалуйста, помогите мне ....

+1

Использовать interop. Сделайте быстрый поиск в google - interop read excel vb.net - и вам будет предоставлено именно то, что вам нужно –

ответ

0

В вашей форме добавить DataGrid "GridControl1" и button "BtnImport_Click:

В кнопке BtnImport_Click добавить этот код

Private Sub BtnImport_Click(sender As Object, e As EventArgs) Handles BtnImport.Click 
    Dim dialog As New OpenFileDialog() 
       dialog.Filter = "Excel files |*.xls;*.xlsx" 
       dialog.InitialDirectory = "C:\" 
       dialog.Title = "Veuillez sélectionner le fichier à importer" 
       'Encrypt the selected file. I'll do this later. :) 
       If dialog.ShowDialog() = DialogResult.OK Then 
        Dim dt As DataTable 
        dt = ImportExceltoDatatable(dialog.FileName) 
        GridControl1.DataSource = dt 
        GridControl1.Visible = True 
        MsgBox(" done ! ", MsgBoxStyle.Information) 
       End If 
    End Sub 

И добавить function в вашем form:

Public Shared Function ImportExceltoDatatable(filepath As String) As DataTable 
       ' string sqlquery= "Select * From [SheetName$] Where YourCondition"; 
       Dim dt As New DataTable 
       Try 
        Dim ds As New DataSet() 
        Dim constring As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & filepath & ";Extended Properties=""Excel 12.0;HDR=YES;""" 
        Dim con As New OleDbConnection(constring & "") 

        con.Open() 

        Dim myTableName = con.GetSchema("Tables").Rows(0)("TABLE_NAME") 
        Dim sqlquery As String = String.Format("SELECT * FROM [{0}]", myTableName) ' "Select * From " & myTableName 
        Dim da As New OleDbDataAdapter(sqlquery, con) 
        da.Fill(ds) 
        dt = ds.Tables(0) 
        Return dt 
       Catch ex As Exception 
        MsgBox(Err.Description, MsgBoxStyle.Critical) 
        Return dt 
       End Try 
      End Function 

Хоп, который поможет вам

+0

Привет, помогите, спасибо за помощь .... Я успешно импортировал файл excel в виде datagrid ... Но я не могу делать какие-либо операции на листе excel ..... Так как на листе excel можно сделать расчет кредита, но пока он импортируется в datagridview, я не могу этого сделать ... Пожалуйста, помогите мне решить эту проблему –

+0

Hapy to hel, пожалуйста, отметьте ответ. –

+0

Я успешно импортировал файл excel в представлении datagrid .... Но я не могу выполнять какую-либо операцию на листе excel ..... Так как в листе excel можно выполнить расчет кредита, но пока он импортируется в datagridview, я не могу этого сделать ... Пожалуйста, помогите мне разобраться в этой проблеме - –