找回密码  加入

AUTOIT CN

搜索
查看: 2027|回复: 18

[AU3基础] EXCEL 里面有 三张图片使用VBA 如何取的三张图片位置,并且导出成三个JPG[已解决]

[复制链接]
发表于 2016-10-27 14:47:35 | 显示全部楼层 |阅读模式
本帖最后由 kk_lee69 于 2016-11-7 09:44 编辑

EXCEL 里面有 三张图片使用VBA 如何取的三张图片位置,并且导出成三个JPG
发表于 2016-10-27 15:01:45 | 显示全部楼层
新版的EXCEL 可以利用7z解压后 找到图片。
发表于 2016-11-2 21:06:07 | 显示全部楼层
vba代码:
  1. n=0
  2. for each sh in activesheet.shapes
  3.   n=n+1
  4.   sh.copy
  5.   with activesheet.chartobjects.add(0,0,sh.width,sh.height).chart
  6.     .paste
  7.     .export thisworkbook.path & "\pic-" & n & ".jpg","jpg"
  8.     .delete
  9.   end with
  10. next sh
复制代码
转换成au3代码如下:
  1. $excel=ObjCreate("excel.application")
  2. $excel.visible=True
  3. $wb=$excel.workbooks.open(@ScriptDir&"\pic.xls")
  4. $n=0
  5. For $sh In $wb.activesheet.shapes
  6.         $n+=1
  7.         $sh.copy
  8.         $chart=$wb.activesheet.chartobjects.add(0,0,$sh.width,$sh.height)
  9.         $chart.chart.paste
  10.         $chart.chart.export(@ScriptDir&"\Pic-"&$n&".jpg","jpg")
  11.         $chart.delete
  12. Next
  13. $wb.close(false)
  14. $excel.quit
复制代码
楼主测试一下
发表于 2016-11-3 13:01:15 | 显示全部楼层
我测试可以。
 楼主| 发表于 2016-11-3 13:06:25 | 显示全部楼层
回复 3# kevinch


    我測試看看  太感謝了
 楼主| 发表于 2016-11-3 13:11:12 | 显示全部楼层
回复 3# kevinch

    我測試看看  太感謝了.
再請教個問題  有辦法 匯出原檔案 的品質跟 大小嗎???

有參數或者語法嗎??
发表于 2016-11-3 19:46:42 | 显示全部楼层
回复 6# kk_lee69
  1. n=0
  2. for each sh in activesheet.shapes
  3.   n=n+1
  4.   with sh
  5.     .scalewidth 1,true
  6.     .scaleheight 1,true
  7.     .copy
  8.   end with
  9.   with activesheet.chartobjects.add(0,0,sh.width,sh.height).chart
  10.     .paste
  11.     .export thisworkbook.path & "\pic-" & n & ".jpg","jpg"
  12.     .delete
  13.   end with
  14. next sh
复制代码
 楼主| 发表于 2016-11-4 00:25:35 | 显示全部楼层
回复 7# kevinch

太感謝了  不過還是想請教個問題

   .scalewidth 1,true

    .scaleheight 1,true

這個部分應該是 調整 把 圖片還原為100% 的尺寸

所以 如果圖片載入的時候 已經 被EXCEL 處理過了 或者說 本身的比例已經變成100%了

是不是就無法取得原來的尺寸了??
发表于 2016-11-5 22:26:59 | 显示全部楼层
100%了如果还不行就没办法了,图片本身已经被修改了,程序没办法穿越到过去去寻找原始档案
发表于 2016-11-6 19:37:13 | 显示全部楼层
将 excel 文档另存为 html 格式,图片就有了。了解在什么位置用处不大吧?
 楼主| 发表于 2016-11-7 09:45:20 | 显示全部楼层
回复 9# kevinch

了解   感謝幫忙!! 又學到了不少
 楼主| 发表于 2016-11-7 09:46:41 | 显示全部楼层
回复 10# chishingchan

因為 檔案名稱 可能會放在圖片的前面幾格  所以 程式 必須要了解 抓哪個位置的圖檔,因此 必須要了解 圖片檔的位置
 楼主| 发表于 2016-11-7 09:48:00 | 显示全部楼层
回复 9# kevinch

對了 還有個小問題   請教一下  有辦法得到 圖片檔所 在位置的 儲存格是多少嗎??
发表于 2016-11-7 16:19:13 | 显示全部楼层
回复 12# kk_lee69


    我说的方法应该是将整个EXCEL文档的图片都导出来
 楼主| 发表于 2016-11-7 17:49:15 | 显示全部楼层
回复 14# chishingchan

USER 不想 自己弄 只想讓程式自己跑
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|小黑屋|手机版|AUTOIT CN ( 鲁ICP备15028933号-3 )谷歌 百度

GMT+8, 2018-10-17 11:28 , Processed in 0.100078 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表