📄 unit3.pas
字号:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, Grids, DBGrids, ExtCtrls, OleServer, ExcelXP,
DB;
type
TForm3 = class(TForm)
Panel1: TPanel;
DBGrid1: TDBGrid;
Panel2: TPanel;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
ComboBox1: TComboBox;
Edit2: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
SpeedButton1: TSpeedButton;
Open1: TOpenDialog;
ds2: TDataSource;
procedure BitBtn3Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
uses comobj,Unit8;
{$R *.dfm}
procedure TForm3.BitBtn3Click(Sender: TObject);
begin
form3.Close;
end;
procedure TForm3.SpeedButton1Click(Sender: TObject);
begin
if open1.Execute then
begin
edit1.Text:=open1.FileName;
end;
end;
procedure TForm3.ComboBox1Change(Sender: TObject);
begin
if combobox1.ItemIndex=5 then
begin
edit2.Enabled:=true;
edit2.SetFocus;
end
else
begin
edit2.Enabled:=false;
end;
end;
procedure TForm3.BitBtn1Click(Sender: TObject);
var sheetname:string;
j:integer;
oe:variant;
begin
if ((combobox1.ItemIndex<5) and (combobox1.ItemIndex>-1)) then
begin
sheetname:=Trim(combobox1.Text);
end
else
begin
sheetname:=Trim(edit2.Text);
end;
oe:=CreateOleObject('Excel.Application');
oe.visible:=false;
oe.workbooks.open(Trim(edit1.Text));
j:=2;
try
dm.ADOQ1.Close;
dm.ADOQ1.SQL.Clear;
dm.ADOQ1.SQL.Add('select * from User_Table' );
dm.ADOQ1.Open;
while oe.worksheets[sheetname].cells[j,1].text<>'' do
begin
dm.ADOQ1.Append;
dm.ADOQ1.FieldByName('nav_User').Value:=oe.worksheets[sheetname].cells[j,1].text;
dm.ADOQ1.FieldByName('nav_dept').Value:=oe.worksheets[sheetname].cells[j,2].text;
dm.ADOQ1.FieldByName('Nav_ZJbs').Value:='0';
dm.ADOQ1.Post;
dm.ADOQ4.Close;
dm.ADOQ4.Open;
j:=j+1;
end;
oe.visible:=false;
oe.workbooks.closed;
oe.release;
oe.free;
showmessage('导入完毕');
except
oe.visible:=false;
showmessage('数据库错误请检查');
end;
end;
procedure TForm3.BitBtn2Click(Sender: TObject);
var sheetname:string;
j:integer;
oe:variant;
begin
if ((combobox1.ItemIndex<5) and (combobox1.ItemIndex>-1)) then
begin
sheetname:=Trim(combobox1.Text);
end
else
begin
sheetname:=Trim(edit2.Text);
end;
oe:=CreateOleObject('Excel.Application');
oe.visible:=false;
oe.workbooks.open(Trim(edit1.Text));
j:=2;
try
dm.ADOQ5.Close;
dm.ADOQ5.SQL.Clear;
dm.ADOQ5.SQL.Add('delete from User_Table');
dm.ADOQ5.ExecSQL;
dm.ADOQ1.Close;
dm.ADOQ1.SQL.Clear;
dm.ADOQ1.SQL.Add('select * from User_Table' );
dm.ADOQ1.Open;
while oe.worksheets[sheetname].cells[j,1].text<>'' do
begin
dm.ADOQ1.Append;
dm.ADOQ1.FieldByName('nav_User').Value:=oe.worksheets[sheetname].cells[j,1].text;
dm.ADOQ1.FieldByName('nav_dept').Value:=oe.worksheets[sheetname].cells[j,2].text;
dm.ADOQ1.FieldByName('Nav_ZJbs').Value:='0';
dm.ADOQ1.Post;
dm.ADOQ4.Close;
dm.ADOQ4.Open;
j:=j+1;
end;
oe.visible:=false;
showmessage('导入完毕');
except
oe.visible:=false;
showmessage('数据库错误请检查');
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -