  | 
				VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.   
				 | 
			 
		 
		 
	
		| 上一篇主題 :: 下一篇主題   | 
	 
	
	
		| 發表人 | 
		內容 | 
	 
	
		kk
 
 
  註冊時間: 2003-12-29 文章: 11 來自: Tiger Group
  第 1 樓
  | 
		
			
				 發表於: 星期一 一月 05, 2004 5:15 pm    文章主題: VFP TO EXCEL的文字靠左要如何設定? 我已在文章搜尋過並沒有介紹 | 
				     | 
			 
			
				
  | 
			 
			
				.Selection.HorizontalAlignment=-4108  &&儲存格置中
 
.Selection.HorizontalAlignment=-4152  &&儲存格靠右
 
.Selection.HorizontalAlignment= :???:  &&儲存格靠左 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		hunter5608d
 
 
  註冊時間: 2004-01-06 文章: 1
 
  第 2 樓
  | 
		
			
				 發表於: 星期二 一月 06, 2004 11:32 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				不是可以用 ******.cells(1,1).horizontalalig = 1
 
(1默認自動 2.左 3.中 4.右) | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		kk
 
 
  註冊時間: 2003-12-29 文章: 11 來自: Tiger Group
  第 3 樓
  | 
		
			
				 發表於: 星期四 一月 08, 2004 12:37 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				謝謝您, 我試過了,由於我的資料在FOXPRO是文字型態"1234", 轉到EXCEL它總是會靠右, 還好我已找到解決的方法, 那就是設定儲存格格式的方式, 也題供給各位參考, 如下
 
.Cells(12+i,1).Value = DebitNote.InvoiceNo
 
.Range(.Cells(12+i,1),.Cells(12+i,1)).Select
 
.SELECTION.NumberFormatLocal = "@"	&& 儲存格格式設定
 
當設定為"@" 它的顯示就會靠左了
 
當然若有更好的方式還請各位前輩指教
 
     | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		Ruey
 
 
  註冊時間: 2003-03-12 文章: 1698 來自: tunglo
  第 4 樓
  | 
		
			
				 發表於: 星期四 一月 08, 2004 3:53 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我看ㄚ貴的程式可以的,也跟你的1樓說法一樣.
 
 
 
 
*!*下列是ㄚ貴的程式
 
LParameters xlsfilename,tobequit,xlsfontname,xlsfontsize
 
*	xlsfilename	想要開啟的已存在的 Excel 檔案,如 'd:\test.xls'
 
*	tobequit		Excel 報表製作完成後是否要關閉 Excel ,如  .T. or .F.
 
*	xlsfontname	Excle 內文字型,如 '細明體'
 
*	xlsfontsize		Excel 內文字大小,如 12
 
*				完整傳值範例: do exp_excel_4 with 'd:\test.xls',.F.,'細明體',12
 
 
lo_Excel = CreateObject('Excel.Application')
 
lo_Excel.WorkBooks.Open(xlsfilename)
 
With lo_Excel.Application				&&	此為指向 lo_Excel.Application 這一層,如此可使下一列 lo_Excel.Application.Visible = .T. 變成比較簡短
 
	.DisplayAlerts=.F.				&&	關閉警告,如存檔詢問是否覆蓋舊檔
 
	.ScreenUpdating=.F.				&&	關閉即是運算,加快處裡速度
 
	*.Run("Macro1")				&&	執行巨集
 
	.Cells.Select					&&	選取整個Excel工作表
 
	.ActiveWindow.Zoom=75			&&	顯示比例 75%
 
	.Selection.Font.Name = xlsfontname	&&	設定字型
 
	.Selection.Font.Size = xlsfontsize	&&	設定字體大小
 
	.Selection.Columns.AutoFit		&&	最適欄寬
 
	.Cells(1,1).Select				&&	選定A1儲存格
 
	.Selection.End(-4161).Select		&&	選定第一列最後一行儲存格
 
	.Range(.Selection, .Cells(.ActiveCell.Row, 1)).Select	&&	從目前選定的儲存格往左連續選取至第一個儲存格
 
	With .Selection
 
		*.Interior.Pattern = 2
 
		.HorizontalAlignment = -4108	&&	儲存格置中顯示
 
		.Borders(1).LineStyle = 1		&&	每個(各個)儲存格 Left 框線為實線
 
		.Borders(2).LineStyle = 1		&&	每個(各個)儲存格 Top 框線為實線
 
		.Borders(3).LineStyle = 1		&&	每個(各個)儲存格 Bottom 框線為實線
 
		.Borders(4).LineStyle = 1		&&	每個(各個)儲存格 Right 框線為實線
 
		.Borders(7).Weight = -4138	&&	選取區塊的最 Left 框線的寬度為 xlMedium 或 -4138,預設值為 xlThin 或 2
 
		.Borders( .Weight = -4138	&&	選取區塊的最 Top 框線的寬度為 xlMedium 或 -4138,預設值為 xlThin 或 2
 
		.Borders(9).Weight = -4138	&&	選取區塊的最 Bottom 框線的寬度為 xlMedium 或 -4138,預設值為 xlThin 或 2
 
		.Borders(10).Weight = -4138	&&	選取區塊的最 Right 框線的寬度為 xlMedium 或 -4138,預設值為 xlThin 或 2
 
		*.Borders(11).Weight = 2		&&	選取區塊的內部垂直線的寬度為 xlThin 或 2
 
		*.Borders(12).Weight = 2		&&	選取區塊的內部水平線的寬度為 xlThin 或 2
 
		*.Interior.ColorIndex = 35		&&	填滿儲存格顏色為淺綠色
 
		.Interior.ColorIndex = 41		&&	填滿儲存格顏色為寶藍色
 
		.Font.ColorIndex = 2			&&	變更儲存格字體顏色為白色
 
	EndWith
 
	.Range("A2").Select				&&	點選 A2 儲存格
 
	.ActiveWindow.FreezePanes=.T.	&&	凍結窗格
 
	*lo_Excel.ActiveSheet.HPageBreaks.Add(.Cells(5, 1))	&&	插入分頁
 
	*.Columns("F:F").Select			&&	選取整個欄 F:F
 
	*With .Selection
 
	*	.HorizontalAlignment = -4108	&&	儲存格置中
 
	*EndWith
 
	*.ActiveCell.SpecialCells(11).Select	&&	直接選取最後一欄最後一列儲存格 ,在Excel內操作為 Ctrl+End
 
	With .ActiveSheet.PageSetup
 
		.PrintTitleRows = "$1:$1"		&&	版面設定之工作表列印標題列
 
		.CenterFooter = "第 &P 頁,共 &N 頁"	&&	版面設定之頁尾
 
		.PrintGridlines = .T.			&&	版面設定之列印選取列印格線
 
	EndWith
 
	.ScreenUpdating=.T.				&&	打開即時運算,將最後結果運算出來
 
	.Visible = .T.					&&	檢視Excel
 
	if tobequit=.T.					&&	呼叫程式傳值確定要關閉Excel檔案
 
		.ActiveWorkbook.Save		&&	儲存檔案
 
		.ActiveWorkBook.Close()
 
		.Quit()
 
	endif
 
EndWith _________________ #############################
 
快樂媽咪系列幸福宅配,喝十全雞湯~原來幸福那麼簡單!!
 
 
學會VFP使用者社區的搜尋,Code才會更有趣~
 
############################# | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 5 樓
  | 
		
			
				 發表於: 星期四 一月 08, 2004 4:44 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				如果你的資料在FOXPRO是文字型態"1234", 在將資料貼到Excel時, Excel會以為文字型態的數字就是數字不是文字, 所以它就自作聰明的將它靠右了, 所以你也可以在文字前加一個 '   來跟EXCEL說"這是一個文字型態的字串", 它就不會以為它是數字了, 也就不會靠右, 試看看吧. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		kk
 
 
  註冊時間: 2003-12-29 文章: 11 來自: Tiger Group
  第 6 樓
  | 
		
			
				 發表於: 星期四 一月 08, 2004 5:10 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				| 非常謝謝各位的指導,在這裡就是有家的感覺 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		goto-dream
 
 
  註冊時間: 2004-05-11 文章: 909
 
  第 7 樓
  | 
		
			
				 發表於: 星期三 十二月 22, 2004 11:21 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | garfield 寫到: | 	 		  | 如果你的資料在FOXPRO是文字型態"1234", 在將資料貼到Excel時, Excel會以為文字型態的數字就是數字不是文字, 所以它就自作聰明的將它靠右了, 所以你也可以在文字前加一個 '   來跟EXCEL說"這是一個文字型態的字串", 它就不會以為它是數字了, 也就不會靠右, 試看看吧. | 	  
 
 
1.無論是用全形空白或半型的空白
 
都會是變成數字型態
 
 
加入'  ,這樣會多一各"1234'"
 
 
然後我在excel中使用.用空白取代'
 
竟然會變成數字....
 
 
2.我找到另外一種方式
 
就是乾脆變成數字.沒有小數點
 
然後靠右邊...
 
 
 
還有其他種方式嗎? _________________ 福隆昌淨水有限公司--淨水器的專家,淨水器,飲水機,濾心!!
 
 
想了解更多,您可上幸福雞湯組.找尋!!丁澐瑄.老師.
 
 
          愛作夢 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		elleryq
 
  
  註冊時間: 2007-06-21 文章: 768
 
  第 8 樓
  | 
		
			
				 發表於: 星期四 十二月 23, 2004 3:07 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | 引言回覆: | 	 		  | 非常謝謝各位的指導,在這裡就是有家的感覺 | 	  
 
那麼記得要常回家啊~~ | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 9 樓
  | 
		
			
				 發表於: 星期四 十二月 23, 2004 11:47 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				goto-dream, 你的問題是什麼 ? _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		goto-dream
 
 
  註冊時間: 2004-05-11 文章: 909
 
  第 10 樓
  | 
		 | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		jeff25
 
 
  註冊時間: 2004-10-22 文章: 76 來自: taiwan
  第 11 樓
  | 
		
			
				 發表於: 星期四 十二月 23, 2004 5:58 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				儲存格格式設成文字就 ok 了
 
NumberFormatLocal = "@" _________________ jeff | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 12 樓
  | 
		
			
				 發表於: 星期四 十二月 23, 2004 6:07 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我的意思是
 
.Range("A2").FormulaR1C1 = ['1234]
 
在儲格裡的內容最左邊插入' , 這個功能在 lotus 時代就有了, 所以只有像我這種遠古時代的人才知道, 現代人就只會用以下這兩行程式碼吧!
 
.Range("A2").FormulaR1C1 = [1234]
 
.Range("A2").NumberFormatLocal = [@] _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		黃澤民
 
 
  註冊時間: 2003-09-08 文章: 66 來自: 新竹
  第 13 樓
  | 
		
			
				 發表於: 星期四 十二月 23, 2004 10:09 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我記的還有一個
 
.Range("A2").FormulaR1C1 = [^1234]
 
是置中還是??忘了
 
  | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		goto-dream
 
 
  註冊時間: 2004-05-11 文章: 909
 
  第 14 樓
  | 
		
			
				 發表於: 星期四 十二月 23, 2004 11:09 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				1.原來我程式寫錯了.正確的是下面的
 
ExcelApp.cells(i,j).NumberFormatLocal = [@]
 
ExcelApp.cells(i,j).VALUE=[1234]
 
我在NumberFormatLocal之前多了各Selection
 
ExcelApp.cells(i,j).Selection.NumberFormatLocal = [@]
 
 
2.Range("A2").FormulaR1C1 = [^1234] 
 
這各我試出來看到的直會多^ _________________ 福隆昌淨水有限公司--淨水器的專家,淨水器,飲水機,濾心!!
 
 
想了解更多,您可上幸福雞湯組.找尋!!丁澐瑄.老師.
 
 
          愛作夢 | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		朱育興
 
 
  註冊時間: 2003-08-25 文章: 661 來自: 台中市大里區
  第 15 樓
  | 
		
			
				 發表於: 星期五 十二月 24, 2004 1:25 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | goto-dream 寫到: | 	 		  
 
2.Range("A2").FormulaR1C1 = [^1234] 
 
這各我試出來看到的直會多^ | 	  
 
 
改為 Range("A2").Value = [^1234] 試試 _________________ 希望有更多人來參與
 
 VFP wiki - 需要大家一起完成的VFP電子書與FAQ  | 
			 
		  | 
	 
	
		| 回頂端 | 
		 | 
	 
	
		  | 
	 
	
		 | 
	 
 
  
  	 
	    
  	   | 
 	
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
  | 
   
  
		 |