1.首先引用comobj、varints单元

2.声明xlApp,xlBook, xlSheet,picture: Variant;

3.基本操作

xlApp:=CreateOleObject('Excel.Application'); 有异常才没有安装Excel。

xlBook := xlApp.workBooks.Open(sd1.FileName);//打开已经存在的excel文件

//xlBook := xlApp.WorkBooks.Add;//增加工作表

xlBook.WorkSheets[1].Activate;//激活工作表

xlBook.WorkSheets[1].Cells[1,1] := '姓名';//单元格赋值

xlBook.save;//保存工作表

//xlBook.SaveAs(directory_filname);//另保存工作表

xlBook.close;

xlApp.Quit;

xlApp:= UnAssigned;

4.其他常用操作

xlApp.caption:='应用程序调用 Microsoft Excel';//

xlBook.worksheets[1].cells.NumberFormatLocal:='@';//设置工作表为文本方式

xlBook.worksheets[1].name:='sheet123';//工作表的名字

xlBook.worksheets[1].rows[1].font.size:=fontsize;//设置行字体大小

xlBook.worksheets[1].rows[1].font.bold:=true;  //加粗

xlBook.worksheets[1].rows[1].interior.color:=clskyblue;  //填充色

xlBook.worksheets[1].rows[1].rowheight:=35;//设置行高

xlBook.worksheets[1].rows[1].WrapText:=True;//设置自动换行

xlBook.worksheets[1].rows[1].HorizontalAlignment:=3;//设置一行的水平居中属性

xlBook.worksheets[1].columns[1].ColumnWidth:=15;//设置一列的宽度

xlBook.worksheets[1].usedrange.rows.count //最大行数

xlBook.WorkSheets[1].Cells[1,1] := '姓名';

//合并单元格

xlapp.range[xlBook.workSheets[1].cells[2,1],xlBook.workSheets[1].cells[2,3]].merge;

//冻结窗口 冻结所激活的单元格左上方区域

xlBook.worksheets[1].cells[10,10].activate;

xlapp.activeWindow.FreezePanes:=true;

//边框

xlBook.worksheets[1].range[xlBook.worksheets[1].cells[3,1],xlBook.worksheets[1].cells[5,1]].borders[m].linestyle:=1;//m的含义:1-左 2-右 3-顶 4-底 5-斜( \ ) 6-斜( / )

xlBook.worksheets[1].range[xlBook.worksheets[1].cells[loldRowIdx,1],xlBook.worksheets[1].cells[lrowIdx -1,lDeepth]].borders.linestyle:=1;//range内所有单元格边框显示
xlBook.worksheets[1].range[xlBook.worksheets[1].cells[loldRowIdx,1],xlBook.worksheets[1].cells[lrowIdx -1,lDeepth]].borders[11].linestyle:=-4142; //去除range内部子单元格边框11:横线,12竖线,-4142代表清除 (神奇的东西,网上很难搜到。。)
xlBook.worksheets[1].range[xlBook.worksheets[1].cells[loldRowIdx,1],xlBook.worksheets[1].cells[lrowIdx -1,lDeepth]].borders[12].linestyle:=-4142;

//插入图片操作,前提是图片必须存在电脑中插入后也不可以删除;

picture := xlBook.WorkSheets[1].Pictures.Insert(headFname); //插入图片

picture.left := xlBook.WorkSheets[1].Cells[idx,1].left + 1; //左

picture.top := xlBook.WorkSheets[1].Cells[idx,1].top + 1; //高

picture.width := xlBook.WorkSheets[1].Cells[idx,1].width - 2; //宽度

picture.height := xlBook.WorkSheets[1].Cells[idx,1].height - 2; //高度

picture := UnAssigned;

//判断文件是否已经打开
function isFileInUse(fName : string ) : boolean;
var
HFileRes : Tfilestream;
begin
  Result := false;
  if not FileExists(fName) then
    exit;
  try
    hfileres:=Tfilestream.create(fname,fmShareExclusive);
    result:=false;
  except
    result:=true;
  end;
  try
    hfileres.Free;
  except
  end;
end;

delphi下excel的操作的更多相关文章

  1. Delphi对Excel保护操作

    http://www.docin.com/p-378093577.html在金融系统的应用系统中经常需要与Excel交换数据或利用Excel制作报表,但在某些情况下,我们的业务系统要求生成的临时或最终 ...

  2. 小白学 Python(24):Excel 基础操作(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  3. Delphi的注册表操作

    转帖:Delphi的注册表操作 2009-12-21 11:12:52 分类: Delphi的注册表操作 32位Delphi程序中可利用TRegistry对象来存取注册表文件中的信息.     一.创 ...

  4. VS2010 MFC对Excel的操作

    这是帮别人做项目遇到的一个问题,的那个是纠结了老长时间,本以为是一件很轻松的事... 首先,这里采用了OLE来对Excel进行操作,网上其实有大把的例子,虽然都可以运行,但是并不能满足项目要求,其实我 ...

  5. DELPHI下的SOCK编程(转)

    DELPHI下的SOCK编程      本文是写给公司新来的程序员的,算是一点培训的教材.本文不会涉及太多的编程细节,只是简单讲解在DELPHI下进行Winsock编程最好了解的知识. 题外话:我认为 ...

  6. DELPHI下API简述(1800个API)

    DELPHI下API简述 http://zero.cnbct.org/show.asp?id=144 auxGetDevCaps API 获取附属设备容量 auxGetNumDevs API 返回附属 ...

  7. java导入导出excel常用操作小结及简单示例

    POI中常用设置EXCEL的操作小结: 操作excel如下 HSSFWorkbook wb = new HSSFWorkbook();  //创建一个webbook,对应一个Excel文件 HSSFS ...

  8. Delphi下的RTTI函数大全

    http://ljz9425.blog.163.com/blog/static/369148572008111635253858/ Delphi下的RTTI(下) 2008-12-16 15:52:5 ...

  9. Delphi中文本文件的操作

    Delphi中文本文件的操作 相关知识内容: 在对文本文件进行任何处理之前,首先要打开此文本文件.声明变量:通过此变量可以来引用一个文本文件. 打开一个文件需要两步:首先是 AssignFile(), ...

随机推荐

  1. lucene 搜索优化,个人实战经验总结

    1.IndexSearch.IndexReader等都是线程安全的类,多线程并发使用是没有问题的.不到忘不得以,尽量避免重新实例化,他们实例化是很花费时间的,看一下他们的构造原理你就知道了.   2. ...

  2. spring揭秘读书笔记----spring的ioc容器之BeanFactory

    spring的ioc容器是一种特殊的Ioc Service Provider(ioc服务提供者),如果把普通的ioc容器认为是工厂模式(其实很相似),那spring的ioc容器只是让这个工厂的功能更强 ...

  3. URAL 1750 Pakhom and the Gully 计算几何+floyd

    题目链接:点击打开链接 gg.. . #pragma comment(linker, "/STACK:1024000000,1024000000") #include <cs ...

  4. 贯通tomcat --- 电子书

    http://www.educity.cn/jiaocheng/j10865.html 第1章 认识Tomcat [本章导读] Tomcat服务器是一个免费的开放源代码的Web应用服务器.它是Apac ...

  5. Python脚本性能剖析

    ################### #Python脚本性能剖析 ################### cProfile/profile/hotshot用于统计Python脚本各部分运行频率和耗费 ...

  6. Tomcat的类加载器

    看完了Java类装载器,我们再来看看应用服务器(Tomcat)对类加载器的使用,每个应用服务器都有一套自己的类加载器体系,从而与Java的类加载器区别开以达到自己与应用程序隔离的目的.Tomcat的类 ...

  7. linu保持远程会话

    django的server启动后,若关闭ssh会就会自动切断进程,结汇对话 命令scree会保持这个会话,在关闭ssh后,仍然能访问 shell下 1screen 进入后 2启动server 关闭ss ...

  8. iOS视频压缩存储至本地并上传至服务器

    最近做了一个项目,我把其中的核心功能拿出来和大家分享一下,重点还是自己梳理一下. 这里关于视频转码存储我整理了两个方法,这两个方法都是针对相册内视频进行处理的. 1.该方法没有对视频进行压缩,只是将视 ...

  9. 各种排序算法C++

    各种排序算法 插入排序 直接插入排序 void InsertSort(int arr[], int len) { int i, j; int temp; for (i = 1; i < len; ...

  10. 【转】支付宝WAP支付接口开发

    支付宝WAP支付接口开发 因项目需要,要增加支付宝手机网站支付功能,找了支付宝的样例代码和接口说明,折腾两天搞定,谨以此文作为这两天摸索的总结.由于公司有自己的支付接口,并不直接使用这个接口,所以晚些 ...