如何将sql server数据库中的数据取出来放到EXCEL表,是否可以直接在excel中完成 急求,在EXCEL中如何实现? 10

数据库的select查询语句已完成。... 数据库的select查询语句已完成。 展开
 我来答
oz43jsp
2011-03-28 · TA获得超过547个赞
知道小有建树答主
回答量:655
采纳率:0%
帮助的人:361万
展开全部
RITEEXCEL是需要你再PRIVATE里定义的一个函数,BDE或者ADO都无所谓,你只要把你的表对应好就可以了。
procedure Tqueryform.Button5Click(Sender: TObject);
var
sname:string; //这里是用来取你界面上输入的EXCEL表名
begin
sname:=edit1.Text;
if sname<>'' then //用户输入了表名
// title:='所需数据';
writeexcel(sname)
else
writeexcel('查询结果'); //否则存为查询结果.exl
end;
procedure Tqueryform.writeexcel(sname:string);
var
j,row: integer;
filename: string;
begin
filename := concat((extractfilepath(application.exename)+'excel\'), sName, '.xls');
//保存在程序所在文件夹下的一个叫做excel的文件夹下面
//初始化
try
excelapplication1:=Texcelapplication.Create(application);
ExcelWorksheet1 := TExcelWorksheet.Create(Application);
ExcelWorkbook1 := TExcelWorkbook.Create(Application);
ExcelApplication1.Connect;
except
Application.Messagebox('Excel 没有安装!', 'Hello', MB_ICONERROR + mb_Ok);
Abort;
end;
//数据的导出
try
begin
ExcelApplication1.Workbooks.Add(EmptyParam, 0);
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]);
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _worksheet);
//给表格的每个单元附值
excelworksheet1.Cells.Item[1,1]:='工号'; //这个根据你的数据表对应的变量名
excelworksheet1.Cells.Item[1,2]:='日期';
excelworksheet1.Cells.Item[1,3]:='表型';
excelworksheet1.Cells.Item[1,4]:='地址';
excelworksheet1.Cells.Item[1,5]:='原因';
row:=2;
maindm.ADOQuery2.First;
while not maindm.ADOQuery2.Eof do
begin
for j:=1 to 5 do
begin
excelworksheet1.Cells.Item[row,j]:=maindm.ADOQuery2.Fields[j-1].AsString;
end; //end ...for
maindm.ADOQuery2.Next;
row:=row+1; //得到查询后的行数
end;
ExcelWorksheet1.SaveAs(filename);
Application.Messagebox(pchar('数据成功导出' + filename), 'Hello',mb_Ok);
end //end try...finally
//结束释放空间
finally
ExcelApplication1.Disconnect; //断开连接
ExcelApplication1.Quit; //退出EXCEL
ExcelApplication1.Free;//释放空间
ExcelWorksheet1.Free; //释放空间
ExcelWorkbook1.Free; //释放空间
end;
end;
百度网友9bb046f
2011-03-28 · TA获得超过158个赞
知道小有建树答主
回答量:275
采纳率:0%
帮助的人:72.6万
展开全部
可以 vba
Public Function openCn()
'----------------------------
' 打开数据库
Set CN = New Connection

constr = "Provider=SQLOLEDB.1;Password=*************;Persist Security Info=True;User ID=sa;Initial Catalog=" & ConnectName & ";Data Source=******"

CN.Open constr
If CN.State <> 1 Then
openCn = False

MsgBox "打开数据库失败!"

Set CN = Nothing
Exit Function
End If

'----------------------------
End Function
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式