  | 
				VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.   
				 | 
			 
		 
		 
	
		| 上一篇主題 :: 下一篇主題   | 
	 
	
	
		| 發表人 | 
		內容 | 
	 
	
		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 文章: 2160
 
  第 2 樓
  | 
		 | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		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 文章: 2160
 
  第 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 文章: 473 來自: 台南市
  第 5 樓
  | 
		 | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
  	 
	    
  	   | 
 	
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
  | 
   
  
		 |