| 上一篇主題 :: 下一篇主題   | 
	
	
	
		| 發表人 | 
		內容 | 
	
	
		sthuang66
 
 
  註冊時間: 2014-04-27 文章: 178
 
  第 1 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 1:29 am    文章主題: 請教VFP去控制EXCEL一個小細節 | 
				     | 
			 
			
				
  | 
			 
			
				請教各位高手!
 
我用VFP算出一個表後輸出成EXCEL格式(n.xls)要做書面報告!但是第一排欄位名稱想用程式把它小改!利用下面簡單語法改成(n1.xls)
 
NY="104"
 
Y=VAL(NY)
 
HALF="下"
 
OHALF="上"  
 
NNY=PADL(ALLTRIM(STR(Y-1)),3,'0')
 
NNNY=PADL(ALLTRIM(STR(Y-2)),3,'0')
 
P1=NNY+OHALF
 
P2=NNY+HALF
 
P3=NNNY+OHALF
 
OLE=CREATEOBJECT("EXCEL.APPLICATION") 
 
OLE.VISIBLE=.T. 
 
OLE.WORKBOOKS.OPEN("D:\DENT_TB\A904\OD3\N.XLS")
 
OLE.RANGE('A1').VALUE='件數排名'
 
OLE.RANGE('C1').VALUE='總數'   
 
OLE.RANGE('D1').VALUE='"&P1"排名'
 
OLE.RANGE('E1').VALUE='"&P2"排名'
 
OLE.RANGE('F1').VALUE='"&P3"排名'
 
OLE.ACTIVEWORKBOOK.SAVE
 
OLE.WORKBOOKS.CLOSE
 
OLE.QUIT
 
RELEASE OLE
 
QUIT
 
------------------------------------------------------------------
 
只是在D1,E1,F1都會有雙引號呈現!不知道有沒有辦法去掉 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		sthuang66
 
 
  註冊時間: 2014-04-27 文章: 178
 
  第 2 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 1:39 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				大家若是懶得看XLS檔
 
我把N.XLS第一行列出
 
(件數排名)	(ID)	(總數) (p1_rank) (p2_rank)(p3_rank)
 
 (p1_rank) (p2_rank)(p3_rank)三個用程式改變後成為
 
N1.XLS第一行列出
 
件數排名	id	總數	"103下"排名	"103上"排名	"102下"排名
 
_____________________________________________
 
會有""產生
 
如果我程式中OLE.RANGE('D1').VALUE='"&P1"排名' 
 
把雙號去掉時它就完全不取代直接秀P1排名
 
也不能用'"+NNY+""+OHALF"排名----->這是vfp語法!excel不理 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		sthuang66
 
 
  註冊時間: 2014-04-27 文章: 178
 
  第 3 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 1:40 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				大家若是懶得看XLS檔
 
我把N.XLS第一行列出
 
(件數排名)	(ID)	(總數) (p1_rank) (p2_rank)(p3_rank)
 
 (p1_rank) (p2_rank)(p3_rank)三個用程式改變後成為
 
N1.XLS第一行列出
 
件數排名	id	總數	"103下"排名	"103上"排名	"102下"排名
 
_____________________________________________
 
會有""產生
 
如果我程式中OLE.RANGE('D1').VALUE='"&P1"排名' 
 
把雙號去掉時它就完全不取代直接秀P1排名
 
也不能用'"+NNY+""+OHALF"排名----->這是vfp語法!excel不理 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		perry
 
 
  註冊時間: 2014-07-20 文章: 203
 
  第 4 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 7:56 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				| OLE.RANGE('D1').VALUE='"'+P1+'"排名'  &&把雙引號拆開,P1本身就是字串!! | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		sthuang66
 
 
  註冊時間: 2014-04-27 文章: 178
 
  第 5 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 2:56 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				OLE.RANGE('D1').VALUE='+p1+排名'  這樣出來是
 
+p1+排名 並沒有帶入我預定要的字串
 
OLE.RANGE('D1').VALUE='"+P1+"排名' 這樣出來是
 
"+P1+"排名 並沒有帶入我預定要的字串
 
OLE.RANGE('D1').VALUE='"'+P1+'"排名'
 
用完和我用'"&P1"排名一樣   帶入後"103下"排名  103下兩邊會有"  "
 
 
有什麼敘述可以  帶入後是   103下排名  沒有雙引號 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		perry
 
 
  註冊時間: 2014-07-20 文章: 203
 
  第 6 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 3:48 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				還以為您要雙引號...
 
不就單純的字串相加
 
"'"+p1+'排名'  && "'" 儲存格第1個字元是單引號代表以字串處理!!
 
別想的太複雜,VFP 先運算處理後才會丟到excel儲存格. | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		sthuang66
 
 
  註冊時間: 2014-04-27 文章: 178
 
  第 7 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 5:34 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				謝謝回答!試過 正如我要!
 
 
可以請教  &&   的意義!!我試過不加會錯誤
 
 
根據perry方法我更改
 
OLE.RANGE('D1').VALUE=""+p1+"排名"也可以了
   sthuang66 在 星期日 八月 09, 2015 5:55 pm 作了第 1 次修改 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		perry
 
 
  註冊時間: 2014-07-20 文章: 203
 
  第 8 樓
  | 
		
			
				 發表於: 星期日 八月 09, 2015 5:48 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				&& ->只是在指令運算式之後備註說明用的指令
 
寫習慣就順手寫上,抱歉抱歉!!您只要用下面這樣就好.
 
OLE.RANGE('D1').VALUE="'"+p1+'排名' | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		 |