用ADO连接Excel时,可以对Excel进行读写操作码? 用ADO连接Excel时,可以对Excel进行读写操作码?我不是很懂,哪位大侠知道的话,给的详细点,不是我不给分,实在是没分了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ado连接excel然后使用create table 创建sheet,insert 语句来插入记录,这样可以吧,你试试 我现在用ADOQuery,我现在要做的是:通过读前一列的值,来计算下一列的值,并写入,可是老是报错代码:procedure TForm1.BitBtn5Click(Sender: TObject);var sql_1:String; new_1:String; str1:String; str2:String; new_2:Single; float:Single; int1:Integer; int2:Integer;beginADOQuery1.Close;ADOQuery1.SQL.Clear;sql_1:='select * from [线路水平数据$] where 线路要素点(线段首段)=QD';ADOQuery1.SQL.Add(sql_1);ADOQuery1.Open;new_1:=ADOQuery1.fieldbyname('夹直线方向角(输入)').AsString;str1:=Copy(new_1,5,2);str2:=Copy(new_1,3,2);int1:=StrToInt(str1);int2:=StrToInt(str2);float:=(int2*60+int1)/3600;new_2:=ADOQuery1.fieldbyname('夹直线方向角(度)').AsFloat;new_2:=float;ADOQuery1.Close;ADOQuery1.SQL.Clear;ADOQuery1.SQL.Add(sql_1);ADOQuery1.ExecSQL;ADOQuery1.active:=false;ADOQuery1.active:=true;ADOQuery1.active:=false;ADOQuery1.active:=true;end; procedure TForm1.Button1Click(Sender: TObject);begin if OpenDialog1.Execute then begin Edit1.Text:=OpenDialog1.FileName; ADOConnection1.Close; ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+OpenDialog1.FileName+';Extended Properties=Excel 8.0;Persist Security Info=False'; ADOConnection1.LoginPrompt:=false; try ADOConnection1.Open; try Adoquery1.Close; Adoquery1.SQL.Clear; Adoquery1.SQL.Add('create table [sheet1$]('); Adoquery1.SQL.Add('sid varchar(20),sname varchar(20))'); Adoquery1.ExecSQL; except showmessage('创建表失败!'); exit; end; try Adoquery1.Close; Adoquery1.SQL.Clear; Adoquery1.SQL.Add('select * from [sheet1$]'); Adoquery1.Open; Adoquery1.Append; Adoquery1.FieldByName('sid').AsString:='fdsa'; Adoquery1.FieldByName('sname').AsString:='fdsa'; Adoquery1.Post; showmessage('插入数据成功!'); except showmessage('插入数据出错!'); end; except Application.MessageBox('连接失败','提示',MB_ICONINFORMATION); end; end;end; 你这个是从一个Edit1.Text读数据到Excel里,我要的是通过读前一列的值,来计算下一列的值,并写入;不过还是谢谢你了 请问各位一个关于delphi调试的问题。 泉州的请进啊.有要事请教!! 照着教程做,也不能做出来,帮我看看 各位大虾都来看看呢,在线等... 怎样快速访问word文档? ADO中的locate、lookup、index和seek这些方法有何区别?? 找深圳朋友一起学习delphi 拜师学艺呀!吾乃一介武夫!忽转型!想作文人!!望各位大侠成全!! 怎样对DWORD类型的变量分别赋值:loword(myDword) := ? 奇怪的问题??? 给别人开发涉嫌传销软件会怎样? 菜鸟又来送分了 ADOQuery在批处理的时候怎么判断字段的合法性?
代码:procedure TForm1.BitBtn5Click(Sender: TObject);
var
sql_1:String;
new_1:String;
str1:String;
str2:String;
new_2:Single;
float:Single;
int1:Integer;
int2:Integer;
begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
sql_1:='select * from [线路水平数据$] where 线路要素点(线段首段)=QD';
ADOQuery1.SQL.Add(sql_1);
ADOQuery1.Open;new_1:=ADOQuery1.fieldbyname('夹直线方向角(输入)').AsString;
str1:=Copy(new_1,5,2);
str2:=Copy(new_1,3,2);
int1:=StrToInt(str1);
int2:=StrToInt(str2);
float:=(int2*60+int1)/3600;
new_2:=ADOQuery1.fieldbyname('夹直线方向角(度)').AsFloat;
new_2:=float;ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add(sql_1);
ADOQuery1.ExecSQL;ADOQuery1.active:=false;
ADOQuery1.active:=true;
ADOQuery1.active:=false;
ADOQuery1.active:=true;
end;
begin
if OpenDialog1.Execute then
begin
Edit1.Text:=OpenDialog1.FileName;
ADOConnection1.Close;
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+OpenDialog1.FileName+';Extended Properties=Excel 8.0;Persist Security Info=False';
ADOConnection1.LoginPrompt:=false;
try
ADOConnection1.Open;
try
Adoquery1.Close;
Adoquery1.SQL.Clear;
Adoquery1.SQL.Add('create table [sheet1$](');
Adoquery1.SQL.Add('sid varchar(20),sname varchar(20))');
Adoquery1.ExecSQL;
except
showmessage('创建表失败!');
exit;
end; try
Adoquery1.Close;
Adoquery1.SQL.Clear;
Adoquery1.SQL.Add('select * from [sheet1$]');
Adoquery1.Open;
Adoquery1.Append;
Adoquery1.FieldByName('sid').AsString:='fdsa';
Adoquery1.FieldByName('sname').AsString:='fdsa';
Adoquery1.Post;
showmessage('插入数据成功!');
except
showmessage('插入数据出错!');
end;
except
Application.MessageBox('连接失败','提示',MB_ICONINFORMATION);
end;
end;
end;