彩票走势图

Excel读写方案XLSReadWriteII使用技巧总结

原创|其它|编辑:郝浩|2012-10-09 14:52:27.000|阅读 3552 次

概述:XLSReadWriteII的使用技巧, XLSReadWriteII使用MSOPictures来存储图片对象,使用Sheet.DrawingObjects.Pictures来对图片布局,因此就有可能存在这样的情况,DrawingObjects.Count和MSOPictures.Count不相等。这是因为Sheet.DrawingObjects.Pictures对象存储的只是对DrawingObjects的一个引用。因此需要解决的问题是:已知行号和列号,如何在得到图片在MSOPictures中的索引或者对应值。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

XLSReadWriteII是一个读写Excel的组件。他的一般已用只要按照Demo操作基本都能实现,只要不是非常复杂的应用,XLSReadWriteII还是能够胜任的。

最近被派了一个写入图库的应用,图库是Gallery2图库,本身支持自定义字段功能,原始文件是一个排版完整的Excel表格,程序的目标是读取Excel表格的文字图片信息,写入Gallery2或者是生成一个SQL语句,直接插入到Gallery2的MySQL数据库。只要把自定义的信息和图片名称对应起来就好。

XLSReadWriteII使用MSOPictures来存储图片对象,使用Sheet.DrawingObjects.Pictures来对图片布局,因此就有可能存在这样的情况,DrawingObjects.Count和MSOPictures.Count不相等。

这是因为Sheet.DrawingObjects.Pictures对象存储的只是对DrawingObjects的一个引用。因此需要解决的问题是:已知行号和列号,如何在得到图片在MSOPictures中的索引或者对应值。

Function GetID(row: integer): integer;
var
i: integer;
begin
result := 0;
for i := 0 to XLSReadWriteII21.Sheet[sheet].DrawingObjects.Pictures.Count – 1 do
begin
if XLSReadWriteII21.Sheet[sheet].DrawingObjects.Pictures[i].Row1 = row then
result := XLSReadWriteII21.Sheet[sheet].DrawingObjects.Pictures[i].PictureId;
end;
end;

然后通过XLSReadWriteII21.MSOPictures.Items[id – 1].SaveToFile(‘f:/pic/otm002/’+ fn );方法存入到指定文件夹。但这种方法的前提是图片对齐cell。


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:SmallHand的CSDN博客

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP