请问Delphi怎么操作Excel文件?100分求教! 请教各位高手:已经有一个Excel文件,需要在其最前面插入一行,不知如何做?在网上找了一些资料,都是说怎么新建Excel,或顺序加入行的,没找到如何插入一行的办法。多谢多谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Open('E:\aa.xls',null,false,null,null,null,null,null,null,null,null,null,null,0)); ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Sheets[1] as _WorkSheet); ExcelWorksheet1.Cells.Item[1,1]:='aaa'; ExcelWorksheet1.Cells.Item[1,2]:='jbbb'; ExcelWorkbook1.Save ; ExcelWorkbook1.Close(false); ExcelApplication1.Quit; > 全面控制 Excel > 首先?建 Excel ?象,使用ComObj:> var ExcelID: Variant;> ExcelID := CreateOleObject( 'Excel.Application' );> 1) ?示?前窗口:> ExcelID.Visible := True;> 2) 更改 Excel ???:> ExcelID.Caption := '?用程序?用 Microsoft Excel';> 3) 添加新工作簿:> ExcelID.WorkBooks.Add;> 4) 打?已存在的工作簿:> ExcelID.WorkBooks.Open( 'C:ExcelDemo.xls' );> 5) ?置第2?工作表?活?工作表:> ExcelID.WorkSheets[2].Activate; > 或 > ExcelID.WorksSheets[ 'Sheet2' ].Activate;> 6) ??元格?值:> ExcelID.Cells[1,4].Value := '第一行第四列';> 7) ?置指定列的?度(?位:字符??),以第一列?例:> ExcelID.ActiveSheet.Columns[1].ColumnsWidth := 5;> 8) ?置指定行的高度(?位:磅)(1磅=0.035厘米),以第二行?例:> ExcelID.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米> 9) 在第8行之前插入分?符:> ExcelID.WorkSheets[1].Rows[8].PageBreak := 1;> 10) 在第8列之前?除分?符:> ExcelID.ActiveSheet.Columns[4].PageBreak := 0;> 11) 指定?框??度:> ExcelID.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;> 1-左 2-右 3-? 4-底 5-斜( ) 6-斜( / )> 12) 清除第一行第四列?元格公式:> ExcelID.ActiveSheet.Cells[1,4].ClearContents;> 13) ?置第一行字体?性:> ExcelID.ActiveSheet.Rows[1].Font.Name := '??';> ExcelID.ActiveSheet.Rows[1].Font.Color := clBlue;> ExcelID.ActiveSheet.Rows[1].Font.Bold := True;> ExcelID.ActiveSheet.Rows[1].Font.UnderLine := True;> 14) ?行?面?置:> a.?眉:> ExcelID.ActiveSheet.PageSetup.CenterHeader := '?表演示';> b.??:> ExcelID.ActiveSheet.PageSetup.CenterFooter := '第&P?';> c.?眉到?端?距2cm:> ExcelID.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;> d.??到底端?距3cm:> ExcelID.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;> e.??距2cm:> ExcelID.ActiveSheet.PageSetup.TopMargin := 2/0.035;> f.底?距2cm:> ExcelID.ActiveSheet.PageSetup.BottomMargin := 2/0.035;> g.左?距2cm:> ExcelID.ActiveSheet.PageSetup.LeftMargin := 2/0.035;> h.右?距2cm:> ExcelID.ActiveSheet.PageSetup.RightMargin := 2/0.035;> i.?面水平居中:> ExcelID.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;> j.?面垂直居中:> ExcelID.ActiveSheet.PageSetup.CenterVertically := 2/0.035;> k.打印?元格网?:> ExcelID.ActiveSheet.PageSetup.PrintGridLines := True;> 15) 拷?操作:> a.拷?整?工作表:> ExcelID.ActiveSheet.Used.Range.Copy;> b.拷?指定?域:> ExcelID.ActiveSheet.Range[ 'A1:E2' ].Copy;> c.?A1位置?始粘?:> ExcelID.ActiveSheet.Range.[ 'A1' ].PasteSpecial;> d.?文件尾部?始粘?:> ExcelID.ActiveSheet.Range.PasteSpecial;> 16) 插入一行或一列:> a. ExcelID.ActiveSheet.Rows[2].Insert;> b. ExcelID.ActiveSheet.Columns[1].Insert;> 17) ?除一行或一列:> a. ExcelID.ActiveSheet.Rows[2].Delete;> b. ExcelID.ActiveSheet.Columns[1].Delete;> 18) 打印??工作表:> ExcelID.ActiveSheet.PrintPreview;> 19) 打印?出工作表:> ExcelID.ActiveSheet.PrintOut;> 20) 工作表保存:> if not ExcelID.ActiveWorkBook.Saved then> ExcelID.ActiveSheet.PrintPreview;> 21) 工作表另存?:> ExcelID.SaveAs( 'C:ExcelDemo1.xls' );> 22) 放?存?:> ExcelID.ActiveWorkBook.Saved := True;> 23) ??工作簿:> ExcelID.WorkBooks.Close;> 24) 退出 Excel:> ExcelID.Quit; 谢谢bbs791109(小别) ,他的回答解决了我的大问题!只有一个小问题:工作表保存的代码不对,写成了预览的代码。我是菜鸟,自己另外试了一下午才试成功保存。:) 谢谢bbs791109(小别) ,他的回答解决了我的大问题!只有一个小问题:工作表保存的代码不对,写成了预览的代码。我是菜鸟,自己另外试了一下午才试成功保存。:) 关于线程中使用IDHTTP内存增大的问题 请问怎样防键盘hook? 被忽悠了哦.重新找答案,出最后的100分 求助资源方面的问题. 有关打印预览的问题 绑定 ComboBox的问题 自己编写的ActiveX控件出了点问题,请指教~! Borland\Delphi6\Demos\Indy\FTPDemo的问题 如何使用DateTimePicker,实现与数据库中日期的关联? TDBLookupComboBoxEh如何在输入text的同时过滤下拉表格的内容? 字符搜索!100分! XML在系统使用过程中的错误,请帮忙! 有关MDI 的奇怪问题
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Sheets[1] as _WorkSheet);
ExcelWorksheet1.Cells.Item[1,1]:='aaa';
ExcelWorksheet1.Cells.Item[1,2]:='jbbb';
ExcelWorkbook1.Save ;
ExcelWorkbook1.Close(false);
ExcelApplication1.Quit;
> 首先?建 Excel ?象,使用ComObj:
> var ExcelID: Variant;
> ExcelID := CreateOleObject( 'Excel.Application' );
> 1) ?示?前窗口:
> ExcelID.Visible := True;
> 2) 更改 Excel ???:
> ExcelID.Caption := '?用程序?用 Microsoft Excel';
> 3) 添加新工作簿:
> ExcelID.WorkBooks.Add;
> 4) 打?已存在的工作簿:
> ExcelID.WorkBooks.Open( 'C:ExcelDemo.xls' );
> 5) ?置第2?工作表?活?工作表:
> ExcelID.WorkSheets[2].Activate;
> 或
> ExcelID.WorksSheets[ 'Sheet2' ].Activate;
> 6) ??元格?值:
> ExcelID.Cells[1,4].Value := '第一行第四列';
> 7) ?置指定列的?度(?位:字符??),以第一列?例:
> ExcelID.ActiveSheet.Columns[1].ColumnsWidth := 5;
> 8) ?置指定行的高度(?位:磅)(1磅=0.035厘米),以第二行?例:
> ExcelID.ActiveSheet.Rows[2].RowHeight := 1/0.035; // 1厘米
> 9) 在第8行之前插入分?符:
> ExcelID.WorkSheets[1].Rows[8].PageBreak := 1;
> 10) 在第8列之前?除分?符:
> ExcelID.ActiveSheet.Columns[4].PageBreak := 0;
> 11) 指定?框??度:
> ExcelID.ActiveSheet.Range[ 'B3:D4' ].Borders[2].Weight := 3;
> 1-左 2-右 3-? 4-底 5-斜( ) 6-斜( / )
> 12) 清除第一行第四列?元格公式:
> ExcelID.ActiveSheet.Cells[1,4].ClearContents;
> 13) ?置第一行字体?性:
> ExcelID.ActiveSheet.Rows[1].Font.Name := '??';
> ExcelID.ActiveSheet.Rows[1].Font.Color := clBlue;
> ExcelID.ActiveSheet.Rows[1].Font.Bold := True;
> ExcelID.ActiveSheet.Rows[1].Font.UnderLine := True;
> 14) ?行?面?置:
> a.?眉:
> ExcelID.ActiveSheet.PageSetup.CenterHeader := '?表演示';
> b.??:
> ExcelID.ActiveSheet.PageSetup.CenterFooter := '第&P?';
> c.?眉到?端?距2cm:
> ExcelID.ActiveSheet.PageSetup.HeaderMargin := 2/0.035;
> d.??到底端?距3cm:
> ExcelID.ActiveSheet.PageSetup.HeaderMargin := 3/0.035;
> e.??距2cm:
> ExcelID.ActiveSheet.PageSetup.TopMargin := 2/0.035;
> f.底?距2cm:
> ExcelID.ActiveSheet.PageSetup.BottomMargin := 2/0.035;
> g.左?距2cm:
> ExcelID.ActiveSheet.PageSetup.LeftMargin := 2/0.035;
> h.右?距2cm:
> ExcelID.ActiveSheet.PageSetup.RightMargin := 2/0.035;
> i.?面水平居中:
> ExcelID.ActiveSheet.PageSetup.CenterHorizontally := 2/0.035;
> j.?面垂直居中:
> ExcelID.ActiveSheet.PageSetup.CenterVertically := 2/0.035;
> k.打印?元格网?:
> ExcelID.ActiveSheet.PageSetup.PrintGridLines := True;
> 15) 拷?操作:
> a.拷?整?工作表:
> ExcelID.ActiveSheet.Used.Range.Copy;
> b.拷?指定?域:
> ExcelID.ActiveSheet.Range[ 'A1:E2' ].Copy;
> c.?A1位置?始粘?:
> ExcelID.ActiveSheet.Range.[ 'A1' ].PasteSpecial;
> d.?文件尾部?始粘?:
> ExcelID.ActiveSheet.Range.PasteSpecial;
> 16) 插入一行或一列:
> a. ExcelID.ActiveSheet.Rows[2].Insert;
> b. ExcelID.ActiveSheet.Columns[1].Insert;
> 17) ?除一行或一列:
> a. ExcelID.ActiveSheet.Rows[2].Delete;
> b. ExcelID.ActiveSheet.Columns[1].Delete;
> 18) 打印??工作表:
> ExcelID.ActiveSheet.PrintPreview;
> 19) 打印?出工作表:
> ExcelID.ActiveSheet.PrintOut;
> 20) 工作表保存:
> if not ExcelID.ActiveWorkBook.Saved then
> ExcelID.ActiveSheet.PrintPreview;
> 21) 工作表另存?:
> ExcelID.SaveAs( 'C:ExcelDemo1.xls' );
> 22) 放?存?:
> ExcelID.ActiveWorkBook.Saved := True;
> 23) ??工作簿:
> ExcelID.WorkBooks.Close;
> 24) 退出 Excel:
> ExcelID.Quit;
我是菜鸟,自己另外试了一下午才试成功保存。:)
我是菜鸟,自己另外试了一下午才试成功保存。:)