Excel的資料匯入到PB的DW中
Excel的資料匯入到PB的DW中
//====================================================================
// Event:cb_1::clicked()
//--------------------------------------------------------------------
// Description:兩種方法進行
//1、通過陣列一行一行讀入(定義資料有點麻煩)
//2、通過剪貼簿直接
//網友自行選擇用哪種方法
//--------------------------------------------------------------------
// Arguments:(None)
//--------------------------------------------------------------------
// Returns:
//--------------------------------------------------------------------
// Author: FlyStone Date: 2008-09-13 17:31:44 Sep
//--------------------------------------------------------------------
// Modify History:
//
//--------------------------------------------------------------------
// Copyright (C) 2007-008 Flystone Co.,Ltd! All rights reserved.
//====================================================================
String ls_path,ls_name
ls_path = "C:\Documents and Settings\Administrator.FLYSTONE\桌面\新建資料夾 (3)\test.xls"
dw_1.Reset() //clean DW
String a[1000,1000]
Integer i,j,li_ret
li_ret = GetFileopenName('選擇XLS',ls_path,ls_name,"XLS","EXCEL (*.XLS),*.XLS")
if li_ret <> 1 then return
OLEObject ExcelServer
Int li_ConnectErr
ExcelServer = Create OLEObject
li_ConnectErr = ExcelServer.ConnectToNewObject( "excel.application" )
If li_ConnectErr < 0 Then
Choose Case li_ConnectErr
Case -1
MessageBox('錯誤提示','無效的呼叫')
Case -2
MessageBox('錯誤提示','類名沒發現')
Case -3
MessageBox('錯誤提示','物件不能建立')
Case -4
MessageBox('錯誤提示','檔案不能連線')
Case -5
MessageBox('錯誤提示','不能連線現在的物件')
Case -6
MessageBox('錯誤提示','檔案無效')
Case -7
MessageBox("錯誤提示","檔案不存在或已經開啟")
Case -8
MessageBox("錯誤提示","伺服器不能裝載選擇的檔案")
Case -9
MessageBox("錯誤提示","其他錯誤")
End Choose
Return
End If
ExcelServer.Workbooks.Open(ls_path,0,False)
//對XLS檔案進行了改動以後,在關閉該檔案時是否需要向使用者提出警告:剪貼簿提示資訊。
ExcelServer.Application.DisplayAlerts = False
//選擇sheets表
//ExcelServer.activeworkbook.worksheets("sheet2").Select()
//方法一:
Int li_rows,li_columns
li_rows = ExcelServer.ActiveSheet.UsedRange.Rows.Count //取得總行數
li_columns= ExcelServer.ActiveSheet.UsedRange.columns.Count //取得總行數
// # of columns in excel
sle_2.Text = TRIM(STRING(li_rows))
// # of rows in excel
sle_1.Text = STRING(li_columns)
//lole_sheet = ole_1.Application.ActiveWorkbook.WorkSheets[1] //得到第當前work的第一個sheet
for i = 1 to li_rows
dw_1.insertrow(0)
for j = 1 to li_columns
a[i,j] = string(ExcelServer.ActiveSheet.Cells(i,j).value)
dw_1.Setitem(i,j,a[i,j])
end for
end for
//方法二,利用剪貼簿
ExcelServer.ActiveSheet.cells.Copy
dw_1.ImportClipboard(2) //匯入資料需要標題
ExcelServer.Application.activeworkbook.Close(False)
ExcelServer.Application.quit()
ExcelServer.DisconnectObject()
//====================================================================
// Event:cb_1::clicked()
//--------------------------------------------------------------------
// Description:兩種方法進行
//1、通過陣列一行一行讀入(定義資料有點麻煩)
//2、通過剪貼簿直接
//網友自行選擇用哪種方法
//--------------------------------------------------------------------
// Arguments:(None)
//--------------------------------------------------------------------
// Returns:
//--------------------------------------------------------------------
// Author: FlyStone Date: 2008-09-13 17:31:44 Sep
//--------------------------------------------------------------------
// Modify History:
//
//--------------------------------------------------------------------
// Copyright (C) 2007-008 Flystone Co.,Ltd! All rights reserved.
//====================================================================
String ls_path,ls_name
ls_path = "C:\Documents and Settings\Administrator.FLYSTONE\桌面\新建資料夾 (3)\test.xls"
dw_1.Reset() //clean DW
String a[1000,1000]
Integer i,j,li_ret
li_ret = GetFileopenName('選擇XLS',ls_path,ls_name,"XLS","EXCEL (*.XLS),*.XLS")
if li_ret <> 1 then return
OLEObject ExcelServer
Int li_ConnectErr
ExcelServer = Create OLEObject
li_ConnectErr = ExcelServer.ConnectToNewObject( "excel.application" )
If li_ConnectErr < 0 Then
Choose Case li_ConnectErr
Case -1
MessageBox('錯誤提示','無效的呼叫')
Case -2
MessageBox('錯誤提示','類名沒發現')
Case -3
MessageBox('錯誤提示','物件不能建立')
Case -4
MessageBox('錯誤提示','檔案不能連線')
Case -5
MessageBox('錯誤提示','不能連線現在的物件')
Case -6
MessageBox('錯誤提示','檔案無效')
Case -7
MessageBox("錯誤提示","檔案不存在或已經開啟")
Case -8
MessageBox("錯誤提示","伺服器不能裝載選擇的檔案")
Case -9
MessageBox("錯誤提示","其他錯誤")
End Choose
Return
End If
ExcelServer.Workbooks.Open(ls_path,0,False)
//對XLS檔案進行了改動以後,在關閉該檔案時是否需要向使用者提出警告:剪貼簿提示資訊。
ExcelServer.Application.DisplayAlerts = False
//選擇sheets表
//ExcelServer.activeworkbook.worksheets("sheet2").Select()
//方法一:
Int li_rows,li_columns
li_rows = ExcelServer.ActiveSheet.UsedRange.Rows.Count //取得總行數
li_columns= ExcelServer.ActiveSheet.UsedRange.columns.Count //取得總行數
// # of columns in excel
sle_2.Text = TRIM(STRING(li_rows))
// # of rows in excel
sle_1.Text = STRING(li_columns)
//lole_sheet = ole_1.Application.ActiveWorkbook.WorkSheets[1] //得到第當前work的第一個sheet
for i = 1 to li_rows
dw_1.insertrow(0)
for j = 1 to li_columns
a[i,j] = string(ExcelServer.ActiveSheet.Cells(i,j).value)
dw_1.Setitem(i,j,a[i,j])
end for
end for
//方法二,利用剪貼簿
ExcelServer.ActiveSheet.cells.Copy
dw_1.ImportClipboard(2) //匯入資料需要標題
ExcelServer.Application.activeworkbook.Close(False)
ExcelServer.Application.quit()
ExcelServer.DisconnectObject()
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/3090/viewspace-615519/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [pb]從excel匯入資料到datawindowExcel
- java 實現excel中的資料匯入到資料庫的功能JavaExcel資料庫
- 匯入excel資源到資料庫Excel資料庫
- pl/sql developer將excel資料匯入到資料庫中SQLDeveloperExcel資料庫
- .NET Core使用NPOI將Excel中的資料批量匯入到MySQLExcelMySql
- java 從EXCEL匯入到資料庫JavaExcel資料庫
- 把Excel表資料匯入到mysqlExcelMySql
- 從Excel到匯入MYSQL資料庫ExcelMySql資料庫
- EasyPoi, Excel資料的匯入匯出Excel
- 將Excel中的資料匯入至MsSQLSERVER中(示例) (轉)ExcelSQLServer
- SQL SERVER 和EXCEL的資料匯入匯出SQLServerExcel
- TP5.1excel匯入資料庫的程式碼?php excel如何匯入資料庫?Excel資料庫PHP
- Excel表的一些資料應用(從txt文字匯出,匯入到Excel表)薦Excel
- Excel 表匯入資料Excel
- Oracle 資料匯入ExcelOracleExcel
- excel檔案中的資料匯入Oracle資料庫的幾種方法ExcelOracle資料庫
- 把ACCESS的資料匯入到Mysql中(轉)MySql
- 把vfp表中的資料匯入指定的excel檔案中 (轉)Excel
- Flume:資料匯入到hdfs中
- ASP.NET EXCEL資料的匯出和匯入ASP.NETExcel
- 將excel中資料從window上匯入到linux中oracle資料庫ExcelLinuxOracle資料庫
- Mysql 大資料表 資料匯入到SqlServer 中的方法MySql大資料Server
- DW中的資料校驗
- SpringBoot+Mybatis-plus整合easyExcel批次匯入Excel到資料庫+匯出ExcelSpring BootMyBatisExcel資料庫
- NCF 如何匯入Excel資料Excel
- excel 匯入sqlyog資料庫ExcelSQL資料庫
- 匯入excel 資料時間Excel
- java 匯入到EXCEL表格JavaExcel
- excel 表匯入到mysqlExcelMySql
- MySQL資料匯入到infobright中MySql
- 關於java中Excel的匯入匯出JavaExcel
- 把csv檔案的資料匯入到oracle資料庫中Oracle資料庫
- asp.net 操作Excel表資料匯入到SQL Server資料庫ASP.NETExcelSQLServer資料庫
- 解決Excel資料匯入sqlite中的中文亂碼問題ExcelSQLite
- php讀取excel檔案資料的匯入和匯出PHPExcel
- Oracle匯入excel資料快速方法OracleExcel
- 將excel表格匯入資料庫Excel資料庫
- 第一章 Excel資料分析入門 --(2)Excel匯入資料Excel