Jasa pembuatan Aplikasi dan website

header ads

Export data ListView ke Excel (Delphi)

Export data ListView ke Excel (Delphi)

unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls,ComObj;

type
  TForm2 = class(TForm)
    ListView1: TListView;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
var
 xls, wb, Range: OLEVariant;
 arrData: Variant;
 jumbaris,jumkolom,i,j:integer;
begin
 jumbaris:=ListView1.Items.Count;
 jumkolom:=3;
 arrData := VarArrayCreate([1,jumbaris+1,1,jumkolom], varVariant);

 for i := -1 to jumbaris-1 do
  for j := 1 to 3 do
  begin
  //membaca kolom dari listview ke dalam array
   if i=-1 then
      arrData[i+2, j]:= ListView1.Column[j-1].Caption
  //mengisi nilai caption dan subitems dari listview ke dalam array
   else
   begin
    if j=1 then
      arrData[i+2, j] := ListView1.Items.Item[i].Caption
    else
      arrData[i+2, j] := ListView1.Items.Item[i].SubItems[j-2];
   end;
  end;
 xls := CreateOLEObject('Excel.Application');
 wb := xls.Workbooks.Add;
 Range := wb.WorkSheets[1].Range[wb.WorkSheets[1].Cells[1, 1],wb.WorkSheets[1].Cells[jumbaris+1,jumkolom]];
 Range.Value := arrData;
 xls.Visible := True;
end;
end.
penjelasannya ada di bawah ini, biar lebih mudah aja di mengerti !
arrData = varArrayCreate([1,6,1,3],varVarian);
isi kan ke dalam array
array ke [1,x] = membuat text pada baris ke A dalam excel
arrData[1,1]:='No.';
arrData[1,2]:='Nama';
arrData[1,3]:='Umur';
array 2 = baris ke b dalam excel dan seterusnya
arrData[2,1]:='1';
arrData[2,2]:='desy';
arrData[2,3]:='19';

arrData[3,1]:='2';
arrData[3,2]:='tomy';
arrData[3,3]:='22';

dan seterusnya...

sumber dari : http://tommyirawan.blogspot.com/2008/08/export-data-listview-ke-excel-delphi.html

Post a Comment

0 Comments