用代码根据模板生成excel表格,生成细节时每行都引用了图片,在Build()方法后需要再加工表格,也是要插入很多图片。
此时有两种方法:MSExcel.Range是vba的用法,XLS.Picture是XLS.Book的用法。
XLS.Picture方法:按钮里代码Build完save后,再次引用这个保存后的表格,使用XLS.Picture插入很多图片,保存后打开表格发现原先细节区插入的图片很多都丢失了,如果XLS.Picture的方法是放在报表事件Afterbuild上执行,则不会出现细节区插入的图片丢失的问题。在按钮代码和Afterbuild事件上使用的XLS.Picture代码都是相同的,说明不是插入图片这个操作本身的错误。
MSExcel.Range方法:按钮里代码Build完save后,再用MSExcel引用文件,用addpicture方法每隔几行就插入一张图片,图片的上边位置是插入行的top坐标,一开始图片跟插入行是对齐的,但是越到后面图片上边距越对不齐行的top坐标,越来越往上偏移,几十张图片插入后累计的偏移非常大。