最近在弄一个把二维码图片插入excel并且打印出来的功能,需要插入的图片有两张,第一次做的时候,把二维码图片保存在本地上,然后用 Excel.Pictures.Insert的方式实现,但是调试的时候,发现打印出来的图片只有一张,并且插入的效果也不是很理想,如果只是打印一张图片,不管是哪个位置,打印出来都没有任何问题。经过一系列的测试,后来发现两张图片重叠在一起了,这个问题困扰了好久。最后看到了一篇文章(忘记在哪里看到的了),发现excel插入图片的两种方式的不同:
1、Excel.Pictures.Insert只是把图片的路径弄到excel,并没有正真把图片插入到excel里面,如果把excel发送给其他人,是看不到图片的;
2、Excel.Worksheet.Shapes.AddPicture 这种方式是真正的把图片插入到excel里面。
于是乎,小弟感觉这个应该就是关键点,就把代码改为Excel.Worksheet.Shapes.AddPicture的这种方式,果然,问题完美解决了!
所以,小弟推荐,以后往excel插入图片,还是使用第二种方式吧!如有不同见解,欢迎交流,同时也欢迎各位大神指导!
注:第二种方法需要引用Microsoft Office 11.0 Object Library,但是小弟在使用过程中程序会报错,后来有个解决办法,只需要引用office就好,不关乎Object Library的版本问题