【发布时间】:2014-04-22 16:14:20
【问题描述】:
我会提取 excel 文档的内容。 devexpress 13.2可以吗?有人有什么建议吗?
提前非常感谢
【问题讨论】:
-
试用电子表格文档服务器:documentation.devexpress.com/#DocumentServer/…
标签: excel devexpress office365
我会提取 excel 文档的内容。 devexpress 13.2可以吗?有人有什么建议吗?
提前非常感谢
【问题讨论】:
标签: excel devexpress office365
看看DevExpress Spreadsheet Document Server(非可视组件,通过其 API 提供完整的电子表格功能)。它允许开发人员创建、修改、保存和打印 Excel 文档,即使系统上没有安装 Microsoft Excel 或 Microsoft Office。支持的文件格式 - XLS、XLSX、XLSM、CSV 和 TXT;
【讨论】:
最近几天我导入了一个 excel 文件来更新一个 SQL 服务器表(DevExpress Grid 仅用于显示导入的数据)。
我是我的例子,我:
注意:在现实生活中,我只使用网格来查看/控制加载的数据。
然后,我根据数据表中加载的数据更新 SQL 服务器上的现有数据表(此处未包含代码)。
注意:在示例中,工作表名称始终为“Sheet1” - 也许您想让工作表名称也为您的场景提供变量...
注意:您不需要 DevExpress,如果您只想将 Excel 文件导入 DataTable(请参阅下面代码中的 ImportTable = ReadExcelIntoDataTable(cFileName, "Sheet1") 和函数 ReadExcelIntoDataTable())。
' 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
【讨论】: