delphi如何控製excel單元格內數字分類? |
尚未結案
|
七星瓢虫
一般會員 發表:5 回覆:5 積分:2 註冊:2005-06-03 發送簡訊給我 |
|
supman
尊榮會員 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
您好:
不太懂您的"文本"是什麼意思?
下面程式碼給您參考
unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,ComObj, StdCtrls,Variants; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.Button1Click(Sender: TObject); var i,j:integer; Excel,WorkBook:Variant;//聲明為OLE Automation 對象 xlsFileName:string; begin xlsFileName:='e:\ex.xls'; try //創建OLE對象Excel Application與 WorkBook Excel:=CreateOleObject('Excel.Application'); WorkBook:=CreateOleobject('Excel.Sheet'); except ShowMessage('您的電腦裡未安裝Microsoft Excel。'); Exit; end; try Excel.Visible:=true; //ShowMessage('下面演示:新建一個XLS文件,并寫入數據,最后關閉它。'); WorkBook:=Excel.WorkBooks.Add(); Excel.Cells(1 , 1):='字符型'; Excel.Cells(2 , 1):='Excel文件'; Excel.Cells(1 , 2):=''; Excel.Cells(2 , 2):=10.01; Excel.Cells(1 , 3):='日期型'; Excel.Cells(2 , 3):=Date; Excel.Cells(2 , 3):=Date; //Excel.Rows[1].Select;//選取一整行 for j:=0 to 4 do//送出資料及設定格線顏色 for i:=0 to 4 do Excel.Cells[j 1,i 1].Borders.Color := RGB(0, 0, 255); Excel.Range['A1:B1'].Select;//選取一整行 Excel.Selection.Merge; //合併儲存格 凍結 ExcelSheet := MSExcel.WorkSheets.Add; ExcelSheet.Cells[ 3, 3].Select; MsExcel.ActiveWindow.FreezePanes := True; 最適欄寬 c1 := ExcelSheet.Cells[2, 1]; c2 := ExcelSheet.Cells[10,37]; ExcelSheet.Range[c1,c2].Select; MsExcel.Selection.Columns.AutoFit; 最適欄寬 整個sheet 都要調整 : ExcelSheet.Cells.Select; MsExcel.Selection.Columns.AutoFit; // Excel.Range['A:A'].Select;//選取一整欄 // Excel.Selection.WrapText:=True;自動折行 //Excel.Selection.Borders['xlInsideVertical'].LineStyle:='xlNone'; //Excel.Selection.Insert;//插入一行 //Excel.WorkBooks.Add('1223');//open Excel的檔案 //Excel.workbooks[1].worksheets[1].name:='asdf';//改變Sheet的名稱 //Excel.Range['A1'].Select;//選擇某一儲存格 //Excel.Selection.NumberFormatLocal:='@';//將儲存格改成文字格式 //Excel.Range['A:D'].Select;//選取從A~D欄 //Excel.Selection.Font.Name:='細明體';//將自型改為細明體 //Excel.Selection.Font.Size:=8;//將字體大小改為8 WorkBook.saveas(xlsFileName); WorkBook.Close(); //ShowMessage('下面演示:打開剛創建的XLS文件,并修改其中的內容,然后,由用戶決定是否保存。'); WorkBook:=Excel.workBooks.Open(xlsFileName); Excel.Cells(2 , 1):='Excel文件類型'; if MessageDlg(xlsFileName '文件已被修改,是否保存?',mtConfirmation, [mbYes, mbNo], 0) = mrYes then WorkBook.save else workBook.Saved := True; //放棄修改 //WorkBook.Close; //Excel.Quit; //退出Excel Application //釋放VARIANT變量 Excel:=Unassigned; except ShowMessage('不能正確操作Excel文件。可能是該文件已被其他程式打開, 或系統錯誤。'); WorkBook.Close(); Excel.Quit(); //釋放VARIANT變量 Excel:=Unassigned; end; end; end.可以在站內搜尋打上"Excel"有非常多資料. |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |