當前位置:首頁(yè) > 問(wèn)答 > 正文內容

利用Excel實(shí)現數據錄入及打印預覽

N數碼快印3年前 (2021-11-09)問(wèn)答182
印刷廠(chǎng)直印●彩頁(yè)1000張只需要69元●名片5元每盒-更多報價(jià)?聯(lián)系電話(huà):138-1621-1622(微信同號)

  利用Excel實(shí)現數據錄入及打印預覽(原創(chuàng ))

    Excel強大的數據錄入功能極打印預覽功能是其他大多數程序望塵莫及的,能不能在我們自己編的程序中調用Excel的數據錄入功能及預覽功能呢。實(shí)際上,使用Delphi你能完全控制Excel或Word的所有功能。雖然來(lái)自Excel對象層次內部非常復雜,但我們通過(guò)使用Variant(在OLE自動(dòng)化中使用的Delphi的安全數組版本)通??梢院?jiǎn)潔,容易的實(shí)現對Excel的控制。

    下面,我將我實(shí)際運用的一些方法介紹給大家:

  1.啟動(dòng)Excel

    在Uses中加入Comobj;

  var

   v:Variant;

  begin

   v:=CreateOleobject(‘Excel.Application’);

   v.Visible:=true;

  end;

    其中,Comobj中包含了用來(lái)檢索OLE的對象和向其傳發(fā)命令的例程,第一行代碼啟動(dòng)Excel,執行后Excel會(huì )在內存中出現,因此第二行代碼使之可見(jiàn)。

  2.關(guān)閉Excel

    在創(chuàng )建了Excel Application對象后,調用它的Quit方法完成關(guān)閉事件。

  If not varIsEmpty(v) then v.quit;

    如果需要在關(guān)閉前確定是否存盤(pán),加入:

  v.DiaplayAlert:=true; //確定存盤(pán)

  v.DiaplayAlert:=false;//不存盤(pán),直接退出

  3.加入工作表及對其表格內容的操作

  var

   Sheet: Variant;

  begin

   v.workbook.add;

   v.Workbooks.Add;

   v.Workbooks[1].WorkSheets[1].Name := '數據錄入';

   Sheet:= v.Workbooks[1].WorkSheets['數據錄入'];

   Sheet.Cells[1,1] :='試驗'; Label1.Caption:=Sheet.Cells[1,1];

  End;

    Sheet對象是很多頁(yè)的集合,其他的Workbooks是工作薄的集合,WorkSheets對象是工作表的集合,Charts對象是圖表的集合。

  4.格式的設置

  var

   Range: Variant;

  begin

   Range := v.Workbooks[1].WorkSheets['數據錄入'].Range['A2:M2’]; //單元格從A2到M2 Range.Merge; //合并單元格

   Range.Rows.RowHeight := 20; //設置行高

   Range.Borders.LineStyle := 1; //加邊框

   Range.Columns[2].ColumnWidth := 12; // 設置列寬

   Range.FormulaR1C1 := '標題';

   Range.HorizontalAlignment := xlCenter; //水平對齊方式

   Range.VerticalAlignment := xlCenter; //垂直對齊方式

   Range.Characters.Font.Name := '宋體'; //字體

   Range.Characters.Font.FontStyle := '加粗';

   Range.Characters.Font.Size := 12;

   Range.Characters.Font.OutlineFont := False; //是否有下劃線(xiàn)

   Range.Characters.Font.ColorIndex := xlAutomatic; //顏色

  end;

    其他的屬性可以察看MSDN或者其他資料。

  5. 打印的設置

  var

   Sheet: Variant;

  begin

   Sheet := XLApp1.Workbooks[1].WorkSheets['數據錄入'];

   Sheet.PageSetup.PrintTitleRows :='$1:$3'; //頁(yè)眉

   Sheet.PageSetup.PrintTitleColumns := '';

   Sheet.PageSetup.LeftFooter := ' 注:頁(yè)腳'+' 總共N頁(yè)'+'--第P頁(yè)'; //頁(yè)腳

   Sheet.PageSetup.LeftMargin := 30; //設置邊距

   Sheet.PageSetup.RightMargin := 30;

   Sheet.PageSetup.TopMargin := 30;

   Sheet.PageSetup.BottomMargin := 50;

   Sheet.PageSetup.PrintQuality := 400; //分辨率

   Sheet.PageSetup.CenterHorizontally := True;//是否水平居中

   Sheet.PageSetup.CenterVertically := True; //是否垂直居中

   Sheet.PageSetup.Orientation := 2; //橫向打印

   Sheet.PageSetup.Draft := False; //非草稿模式

   Sheet.PageSetup.FirstPageNumber := xlAutomatic;

   Sheet.PageSetup.BlackAndWhite := True; //黑白稿

   Sheet.PageSetup.Zoom := 100; //縮放

   sheet.PrintPreView; //打印預覽

  end;

    好了,到這,我已經(jīng)介紹了大部分常用的控制方法,試試吧。提醒你,你的機子裝了Excel沒(méi)有……

收藏0

發(fā)表評論

訪(fǎng)客

看不清,換一張

◎歡迎參與討論,請在這里發(fā)表您的看法和觀(guān)點(diǎn)。
中文字幕在线永久91_国产一级AV不卡毛片_亚洲日本中文字幕在线四区_日韩黄片在线大全