unit OpExcell;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, XLSReadWriteII2, QFileCtrls, OleCtrls, DB, ADODB, CellFormats2,
XLSFonts2, BIFFRecsII2, Rows2;

type

TStringArray = array of array of string;

TOpExcell = class(TObject)
public
function ReadXLSII(var Content: TStringArray; fileName: string): BOOL; //读excel表格
function WriteXLSII(var Content: TStringArray; fileName: string): BOOL; //写excel表格

end;

implementation

function TOpExcell.ReadXLSII(var Content: TStringArray; fileName: string): BOOL;
var
iR, iC, i, j: Integer;
XLS: TXLSReadWriteII2;
begin
Result := True;
XLS := TXLSReadWriteII2.Create(nil);
XLS.fileName := fileName;
XLS.Read;
//得到行列
iR := XLS.Sheets[0].LastRow;
iC := XLS.Sheets[0].LastCol;
try
SetLength(Content, iR + 1, iC + 1);
for i := 0 to iR do
begin
for j := 0 to iC do
begin
Content[i, j] := XLS.Sheets[0].AsString[j, i];
end;
end;
except
Result := False;
end;
if Assigned(XLS) then
begin
XLS.Destroy;
end;
end;

function TOpExcell.WriteXLSII(var Content: TStringArray; fileName: string): BOOL;
var
iR, iC, i, j: Integer;
XLS: TXLSReadWriteII2;
begin
XLS := TXLSReadWriteII2.Create(nil);
XLS.fileName := fileName;
try
try
iR := Length(Content);
iC := Length(Content[0]);
for i := 0 to iR - 1 do
begin
for j := 0 to iC - 1 do
begin
XLS.Sheets[0].AsString[j, i] := Content[i, j];
end;
end;
XLS.Write;
Result := True;
except
Result := False;
end;
finally
XLS.Destroy;
end
end;
end.

转Delphi中XLSReadWrite控件的使用(3) 读和写Excel的更多相关文章

  1. [转载]: delphi中XLSReadWrite控件的使用(1)---简介

    XLSReadWrite控件简介: 一个你需要的,能在Delphi和.NET下访问Excel文件的完美解决方案. 一个经典的读写Excel的控件,对于使用Excel 开发很有帮助 官方网站: http ...

  2. 转Delphi中XLSReadWrite控件的使用(1)---简介

    XLSReadWrite控件简介: 一个你需要的,能在Delphi和.NET下访问Excel文件的完美解决方案. 一个经典的读写Excel的控件,对于使用Excel 开发很有帮助 官方网站: http ...

  3. [转载]: delphi中XLSReadWrite控件的使用(2)---delphi XE下安装

    一.下载 官方下载网址: http://www.axolot.com/components/download.htm 从这里可以下载到从Delphi5到DelphiXE全部支持的版本. 二.软件安装 ...

  4. [转载]: delphi中XLSReadWrite控件的使用(3)---基本应用

    这是自带的一个例子,看懂这一点东西,基本的操作应该没问题了.... unit Main; interface uses Windows, Messages, SysUtils, Variants, C ...

  5. 转 Delphi中XLSReadWrite控件的使用(2)---基本应用

    unit Main; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...

  6. Delphi中WebBrowser控件打开部分网站报"Invalid floating point operation”解决

    Delphi中WebBrowser控件打开部分网站报"Invalid floating point operation”解决 EmbeddedWBWebBrowserDelphi  最近用E ...

  7. Delphi中TxmlDocument控件的用法 转

    Delphi中对XML文件的解析做的很好,比直接使用MS的MSXML2_TLB中的接口要方便很多,现称述于下面. 在讲之前先给出一个XML实例,在讲某些部分是要结合实例比较容易理解. 1<?xm ...

  8. delphi中panel控件应用

    delphi中的panel控件是怎么使用的?研究了很久了,还是搞不懂,只知道把它放到form上面,其他操作一律不懂了,有谁可以请教一下,如何把其他控件放到里面去呢?谢谢 提问者采纳   直接把控件放到 ...

  9. delphi中DateTimePicker控件同时输入日期和时间

    将DateTimePicker的Format属性中加入日期格式设成 'yyyy-MM-dd HH:mm',注意大小写 , 将kind设置为dtkTime即可,可以在每次Form onShow时将Dat ...

随机推荐

  1. STM32从boot跳转到app失败

    现象:在每次boot执行完跳转到APP时,都会跑飞 原因:在boot中使用到了USART和TIM,boot执行完没有关闭总中断 方法:在boot执行完跳转之前关闭中断,__disable_irq() ...

  2. 不用jq的异步数据获取

    function LoadData(url, sign) {             var message = "";             if (sign == " ...

  3. Delphi AES加密(转)

    (**************************************************************) (* Advanced Encryption Standard (AE ...

  4. 【转】使用JMeter测试你的EJB

    对EJB进行一些性能基准测试是非常有必要和有帮助的,测试的方法和工具有很多,不过我最近发现,Apache JMeter是进行基准测试的一个优秀工具.可惜的是,JMeter没有提供一个可测试任意EJB的 ...

  5. Logstash,flume,sqoop比较

    Logstash: 1.插件式组织方式,易于扩展和控制 2.数据源多样不仅限于日志文件,数据处理操作更丰富,可自定义(过滤,匹配过滤,转变,解析......) 3.可同时监控多个数据源(input插件 ...

  6. 【原创】深入理解Docker容器和镜像 -- 分析了docker的命令含义

    10张图带你深入理解Docker容器和镜像 镜像(Image)就是一堆只读层(read-only layer)的统一视角 要点:容器 = 镜像 + 读写层.并且容器的定义并没有提及是否要运行容器. 一 ...

  7. Unity3D 4.3在Windows下打包iOS资源

    想当年,想弄iOS的版本必须弄台mac机器,虽然一开始要弄iOS的时候觉得在mac上开发感觉挺高富帅的,但是做多了之后就觉得在mac上开发各种不方便.现在好了,Unity3D 4.3开始支持在Wind ...

  8. Python 中的 is 和 == 编码和解码

    一   is   与   ==   区别 ==    比较            比较的是值 例如: a = 'alex' b = 'alex' print(a == b) #True a = 10 ...

  9. Android 4学习(9):用户界面 - THE ANDROID WIDGET TOOLBOX

    Android内置了很多View,包括: TextView EditText Chronometer ListView Spinner Button ToggleButton ImageButton ...

  10. Mybatis工具Generator

    转自:http://www.cuiyongzhi.com/post/36.html MyBatis Generator(以下简称为MBG),可以逆向生成持久层的基本代码,而且mybatis的实现方案比 ...