怎样在Excel里面插入磁盘上的图像文件啊? (50分)

  • 主题发起人 主题发起人 constrol
  • 开始时间 开始时间
C

constrol

Unregistered / Unconfirmed
GUEST, unregistred user!
(我是在写一个SQL数据库导出到Excel文件的程序,写到这里就不会写了)
用Delphi来控制,在Excel里面插入图像!图像文件存放于硬盘上的!
在每条记录里,有个字段是存放它对应图像的绝对地址,怎么把这个图像插入到Excel里面,然后再写上这条记录的其它样关信息!我用的是OfficeXP!
望给于帮忙!谢谢!

要求导出后的结果像这样子的!
http://218.5.86.163/MyDown/Photo/delphi/1.JPG
http://218.5.86.163/MyDown/Photo/delphi/2.JPG
分不够的话,可以再加!
 
KeyLife富翁笔记
作者?: hots
标题?: 数据库图片插入到excel中
关键字: blob,excel,流
分类?: 成功心得
密级?: 公开
(评分: , 回复: 0, 阅读: 57) »»
原理,我现在还没有找到更好的方法,不过次方法经过验证,是绝对可行的,并且应用在:韩国浦铁项目中的员工档案导出功能中。
因为用到了粘贴板,所以uses:clipbrd
var
MyFormat:Word;
AData:THandle; //临时句柄变量。
APalette:HPALETTE; //临时变量。
Stream1:TMemoryStream;//TBlobStream
xx:tbitmap;
Stream1:= TMemoryStream.Create;
TBlobField(query.FieldByName('存储图片的字段')).SaveToStream(Stream1);
Stream1.Position :=0;
xx:=tbitmap.Create ;
xx.LoadFromStream(Stream1);
xx.SaveToClipboardFormat(MyFormat,AData,APalette);
ClipBoard.SetAsHandle(MyFormat, AData);
myworksheet1.Range['g3','h7'].select;//myworksheet1是当前活动的sheet页
myworksheet1.Paste;


 
因为图像是640*480大的,就是在Excel里面,我要怎么来控制它的大小?
还有就是第二条记录导出的时候,我的格式要怎么控制???

谢谢!1
 
你会用EXCEL的录制宏功能那就基本可以完全控制excel的动作!
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1587416
 
chji正解。你可以试用一个循环控制输出(导出)过程。
 
后退
顶部