⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unitmain.pas

📁 使用Delphi操作Excel的例子。 功能是从一个excel文件中删除另外一个excel文件已经存在的内容。
💻 PAS
字号:
unit UnitMain;

interface

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

type
  TFrmMain = class(TForm)
    mmo1: TMemo;
    pb1: TProgressBar;
    dlgOpen1: TOpenDialog;
    dlgSave1: TSaveDialog;
    pnl1: TPanel;
    lbl1: TLabel;
    lbl2: TLabel;
    lbl3: TLabel;
    edtInAll: TEdit;
    edtInSub: TEdit;
    edtOut: TEdit;
    btnInAll: TBitBtn;
    btnInSub: TBitBtn;
    btnOut: TBitBtn;
    btnSwitch: TBitBtn;
    btnClose: TBitBtn;
    procedure btnInAllClick(Sender: TObject);
    procedure btnInSubClick(Sender: TObject);
    procedure btnOutClick(Sender: TObject);
    procedure btnCloseClick(Sender: TObject);
    procedure btnSwitchClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure edtInSubChange(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure WriteLog(LogInfo: string);
  end;

var
  FrmMain: TFrmMain;

implementation

uses UniDelPhone, Common;

{$R *.dfm}

procedure TFrmMain.btnCloseClick(Sender: TObject);
begin
  Close;
end;

procedure TFrmMain.btnInAllClick(Sender: TObject);
begin
  if dlgOpen1.Execute then
  begin
    edtInAll.Text := dlgOpen1.FileName;
  end;
end;

procedure TFrmMain.btnInSubClick(Sender: TObject);
begin
  if dlgOpen1.Execute then
  begin
    edtInSub.Text := dlgOpen1.FileName;
  end;
end;

procedure TFrmMain.btnOutClick(Sender: TObject);
begin
  if dlgSave1.Execute then
  begin
    edtOut.Text := dlgSave1.FileName;
  end;
end;

procedure TFrmMain.btnSwitchClick(Sender: TObject);
var
  ExcelDelSub: TExcelDelSub;
begin
  WriteLog('-----------开始--------------------');
  ExcelDelSub := TExcelDelSub.Create;
  //ExcelDelSub.TestSaveAs( edtInSub.Text, edtOut.Text)  ;
  if ExcelDelSub.Run(edtInAll.Text, edtInSub.Text, edtOut.Text) then
    //ShowMessage('完成')
  else
  begin
    ShowMessage('失败' + ExcelDelSub.ErrStr);
    WriteLog('失败' + ExcelDelSub.ErrStr);
  end;
  ExcelDelSub.Free;
  WriteLog('----------结束--------------------');

end;

procedure TFrmMain.WriteLog(LogInfo: string);
begin
  common.WriteLog(LogInfo);
  mmo1.Lines.Add(DateTimeToStr(Now) + LogInfo);
end;

//procedure TFrmMain.btn1Click(Sender: TObject);
//var
//  e: TExcel;
//begin
//  e := TExcel.Create;
//  e.ConnectToExcel;
//  e.OpenWorkBook('C:\Documents and Settings\jyw\桌面\Book3.xls');
//  e.CloseWorkBook('C:\Documents and Settings\jyw\桌面\Book3.xls', False);
//  e.DisconnectFromExcel;
//  //e.Quit;
//  e.Free;
//end;

procedure TFrmMain.FormCreate(Sender: TObject);
var
  DirName:string;
begin
  Application.Title := '数据剔除工具1.0.0.5' ;//+ Common.GetVersionInfo(Application.ExeName);
  Self.Caption := Application.Title;

  DirName := ExtractFilePath(ParamStr(0)) + 'Log\';
  if (not DirectoryExists(DirName)) then
  begin
    CreateDir(DirName);
  end;
end;

procedure TFrmMain.edtInSubChange(Sender: TObject);
begin
  if (edtInAll.Text <> '') and (edtInsub.Text <> '') and (edtOut.Text = '') then
  begin
    edtOut.Text := Copy(edtInAll.Text,1,Length(edtInAll.Text) - 4)+'_DelSub.xls';
  end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -