我会提取excel文档的内容。 devexpress 13.2可以实现吗?有没有人有任何建议?
提前多多感谢
答案 0 :(得分:2)
查看DevExpress Spreadsheet Document Server(通过其API提供完整电子表格功能的非可视组件)。它允许开发人员创建,修改,保存和打印Excel文档,即使系统上未安装Microsoft Excel或Microsoft Office也是如此。支持的文件格式 - XLS,XLSX,XLSM,CSV和TXT;
答案 1 :(得分:0)
我已经完成了一个excel文件的导入,以便在最后几天更新SQL服务器表(仅使用DevExpress Grid来显示导入的数据)。
我的例子,我:
注意:在实际中,我只使用网格来查看/控制加载的数据 然后,我从数据表中加载的数据更新SQL服务器上的现有数据表(此处未包含的代码) 注意:在示例中,工作表名称始终为" Sheet1" - 也许你想让表格名称也为你的场景变化......
注意:如果您只想将Excel文件导入DataTable(请参阅ImportTable = ReadExcelIntoDataTable(cFileName," Sheet1")和函数ReadExcelIntoDataTable,则不需要DevExpress) ))在下面的代码中。
' Chose the Excel-File over Open FileDialog()
' If you don't know the filename & path allready
Dim cFileName As String = ""
Dim filedialog As OpenFileDialog = New OpenFileDialog()
filedialog.Title = "Chose the File"
filedialog.DefaultExt = ".XLSX"
filedialog.ShowDialog()
cFileName = filedialog.FileName
'
If Not cFileName = "" Then
ImportTable = ReadExcelIntoDataTable(cFileName, "Sheet1")
If ImportTable.Rows.Count > 0 Then
Grid_Datenimport.DataSource = ImportTable
' Do some format (if you like)..
GridView2.Columns("ColumnX").DisplayFormat.FormatType = DevExpress.Utils.FormatType.DateTime
GridView2.Columns("ColumnX").DisplayFormat.FormatString = "dd/MM/yyyy HH:mm:ss"
GridView2.Columns("ColumnX").Width = 160
End If
End If
Public Shared Function ReadExcelIntoDataTable(ByVal FileName As String, ByVal SheetName As String) As DataTable
Dim RetVal As New DataTable
Dim strConnString As String
strConnString = "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" & FileName & ";"
Dim strSQL As String
strSQL = "SELECT * FROM [" & SheetName & "$]"
Dim y As New Odbc.OdbcDataAdapter(strSQL, strConnString)
y.Fill(RetVal)
Return RetVal
End Function