VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

請問有一份 xlsx 檔案,如何無痛無腦 import 進VFP的DB

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
whh



註冊時間: 2010-04-16
文章: 166


第 1 樓

發表發表於: 星期二 十月 07, 2014 2:46 pm    文章主題: 請問有一份 xlsx 檔案,如何無痛無腦 import 進VFP的DB 引言回覆

http://i.imgur.com/u3QHFuK.png?1
因為會有跨年的資料,所以會要拆成兩筆~@@

1. import from IMPORT from d:\xxx.xlsx TYPE xl8
VFP 9會直接掛點

2. 先將Excle轉成,非常舊版的 Excle (95)才能順利匯入
But.... 日期會變成很奇怪的數字......


所以以上兩個都不適用

真的不行的話,我現在是用一招最爛
1. 人工先在Oracle建好 Table
2. 人工Excle 複製 → Pl/Sql → 貼上 Commit 到 Oracle DB 後
3. Oracle ODBC to VFP


因為我要做這件事情
代碼:

EX:: 50  |  2013.10  |   2014.3   

         1    2    3      4   5  6    7    8    9   10  11  12
2013                                                50   50  50
2014     50   50   50


程式寫是寫好了...只差無腦轉到我的VFP DB

目前手動轉感覺很智障>.<
回頂端
檢視會員個人資料 發送私人訊息
garfield
Site Admin


註冊時間: 2003-01-30
文章: 2157


第 2 樓

發表發表於: 星期二 十月 07, 2014 3:23 pm    文章主題: 引言回覆

新版excel老人家不想直接認識它

請透過 VFPExcel2007Functions 來使用

http://www.sweetpotatosoftware.com/spsblog/2008/09/30/UsingExcel2007FileFormatsInVFP90.aspx

_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
whh



註冊時間: 2010-04-16
文章: 166


第 3 樓

發表發表於: 星期二 十月 07, 2014 4:33 pm    文章主題: 引言回覆

garfield 大大

可以請問範例嗎 T.T

AppendFromExcel(m.lcXlsFile, "Sheet1", "MyTable", "column1,column2,column3", "Recnum Is Not Null", "field1,field2,field3", "field1 > 14000")

EX:
AppendFromExcel("D:\Oops.xlsx", 分頁名, 我猜是最後轉到VFP的Table名稱, 疑惑1, 疑惑2, 疑惑3, 疑惑4)
回頂端
檢視會員個人資料 發送私人訊息
garfield
Site Admin


註冊時間: 2003-01-30
文章: 2157


第 4 樓

發表發表於: 星期三 十月 08, 2014 9:54 am    文章主題: 引言回覆

? AppendFromExcel(m.lcXlsFile, sheet名字一定要有, 要將資料存在那個TABLE, "在EXCEL欄位的名稱", "抓Excel資料時的條件", "指定TABLE的某些欄位名稱", "")
? CreateTableFromExcel(GETFILE(),'sheet1','zz') &&--自動建立table: zz

作者提供的是原始碼,也有註解, 最少也要看一下提昇功力.
FUNCTION AppendFromExcel(tcXLSFile, tcSheet, tvWorkarea, tcExcelFieldList, tcExcelWhereExpr, tcTableFieldList, tcTableForExpr, tlNoHeaderRow)
* PARAMETER Information
* tcXLSFile := a string specifying an excel file (*.xls, *.xlsx, *.xlsm, *.xlsb) on disk
* tcSheet := a string specifying the name of a worksheet within the excel workbook (can also be a range Sheet1$A1:C20 for instance)
* tvWorkarea [optional] := the Alias, Work Area, or File Name of the table you want the worksheet result set appended to (default is currently selected Alias)
* tcExcelFieldList [optional] := a comma delimited list of columns you want from the worksheet (default is '*' - all columns)
* tcExcelWhereExpr [optional] := a valid SQL Where clause to be used when querying the worksheet (default is '1=1')
* tcTableFieldList [optional] := a comma delimited list of fields you want the worksheet result set inserted into (default is '*' - all fields)
* tcTableForExpr [optional] := a valid VFP Where clause to be used when querying the worksheet result set (cursor) (default is '.T.')
* tlNoHeaderRow [optional] := pass .T. if the worksheet does not contain a header row, .F. is the default which specifies that a header row does exist

_________________
利用>>搜尋<<的功能會比問的還要快得到答案.
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件
goodnight



註冊時間: 2008-10-13
文章: 472
來自: 台南市

第 5 樓

發表發表於: 星期三 十月 08, 2014 9:56 am    文章主題: 引言回覆

請問是一年一次嗎? 檔案如果不多, 可以另存成 csv 把抬頭去掉就好, 個人想法
_________________
希望有更多人來參與
VFP wiki - 需要大家一起完成的VFP電子書與FAQ
回頂端
檢視會員個人資料 發送私人訊息 發送電子郵件 雅虎訊息通 MSN Messenger
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作