zoukankan      html  css  js  c++  java
  • 转Delphi中XLSReadWrite控件的使用(3) 读和写Excel



    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.

  • 相关阅读:
    自己写库—构建库函数雏形
    暑假第二周计划
    初学Oracle
    暑假第一周计划
    读书笔记六
    读书笔记五
    读书笔记四
    读书笔记三
    读书笔记
    系统目标文档
  • 原文地址:https://www.cnblogs.com/happyhills/p/3933045.html
Copyright © 2011-2022 走看看