Database 使用单元格颜色从Excel导入数据
我正在创建一个从excel文件收集数据的数据库。导入非常容易,但是导入时单元格颜色花费了太多时间,因为我当前正在逐个设置单元格的颜色 是否有办法绕过此问题,将颜色、字体、前景色等数据作为数据集与数据表一起导入,以便在dgv中显示 到目前为止,我掌握的代码是:Database 使用单元格颜色从Excel导入数据,database,vb.net,excel,datagridview,Database,Vb.net,Excel,Datagridview,我正在创建一个从excel文件收集数据的数据库。导入非常容易,但是导入时单元格颜色花费了太多时间,因为我当前正在逐个设置单元格的颜色 是否有办法绕过此问题,将颜色、字体、前景色等数据作为数据集与数据表一起导入,以便在dgv中显示 到目前为止,我掌握的代码是: obooks = oexcel.ActiveWorkbook path = obooks.FullName osheet = obooks.Worksheets(e.Node.Text) osheet.Activate() sheetnam
obooks = oexcel.ActiveWorkbook
path = obooks.FullName
osheet = obooks.Worksheets(e.Node.Text)
osheet.Activate()
sheetname = "[" + e.Node.Text + "$]"
myconnection = New System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + path + " ;Extended Properties='Excel 8.0;HDR=No;IMEX=1'")
mycommand = New System.Data.OleDb.OleDbDataAdapter("select * from " & sheetname, myconnection)
dataset = New System.Data.DataSet
mycommand.Fill(dataset)
workspace_data.DataSource = dataset.Tables(0)
'workspace_data.DataSource = databind.
myconnection.Close()
For Me.i = 0 To workspace_data.Rows.Count - 1
For Me.j = 0 To workspace_data.Columns.Count - 1
With workspace_data.Rows(i).Cells(j)
.Style.BackColor = ColorTranslator.FromOle(osheet.UsedRange.Cells(i + 1, j + 1).Interior.color)
End With
Next
Next
可能是每个网格单元颜色的设置占用了时间。尝试在更新网格时使其不可见,或使用虚拟模式,或在CellPaint事件中绘制背景色感谢我尝试了DatagridView.Visible方法,这大大提高了速度,但我无法理解CellPaint事件。你建议我如何使用它。