请教D版的Excel达人 图片导出问题
- cgs001550excel 假设C列 C1~C50有50张图片
如何导出这些图片并以C1~C50重命名
特殊情况 比如C20有两张 以C20 C20-1命名
请高手指导一下 谢谢! iOS fly ~ - shabliVba iOS fly ~
- cgs001550Sub Mynz()
Dim Shp As Shape
Dim FileName As String
For Each Shp In Sheets("118").Shapes
If Shp.Type = msoPicture Then
FileName = ThisWorkbook.Path & "\" & Shp.Name & ".JPG"
Shp.Copy
With Sheets("118").ChartObjects.Add(0, 0, Shp.Width + 10, Shp.Height + 12).Chart
.Paste
.Export FileName, "JPG"
.Parent.Delete
End With
End If
Next
End Sub
类似上面的VBA代码 但是我不懂使用啊
能帮我改改吗? iOS fly ~ - lanwater把第4,8行的sheet118改成你的sheet(1)
- oicqgod刚发现第25行需改一下,要不然“-”后多出空格来:
f_name1 = f_name & "-" & Trim(Str(n)) ' 图片命名后加-n - viaj
- cgs001550高手在万能的D版无处不在 睡前给我的惊喜 明天试试
感谢 兄弟!!!你是最棒的 感谢 带着爱的D版!
iOS fly ~ - cgs001550兄弟 可以再请教一下吗?
你发的我试了 可以重命名了 但是图片都是空白的 不知道什么原因
还有这样导出来的是缩略图
怎么才可以导出原图呢?
谢谢! iOS fly ~ - oicqgod回复9#cgs001550
我试了一下,的确如你描述的,导出为空白。
后来上网搜了一下,见有贴子说从Excel 2016版开始新增了要求,要加一条语句(.Parent.Select,加在第31行),否则导出图片为空白。
我之前是在Excel 2013版上测试的,所以没有遇到这个问题。
现在已经改好了,在附件中,你再试试。
另外,附件中我用的图片都是压缩过的(不想把附件弄得过大),可能这样让你以为是缩略图了,你可以自己另开个文件试一下。 - 南瓜如何把图片反向插入表格,并且调整表格高度个宽度,图片刚好在框体内 iOS fly ~
- cgs001550假如我插入一张分辨率1080p的图片
导出来就会变成很小的一张图片
这个vba有点深奥
搞不懂
我去下载了一个 方方格子 的Excel工具箱使用辅助列勉强可以应付
谢谢兄弟的用心了!你的代码我收藏了!
新年快乐! iOS fly ~ - cgs001550要是可以导出来原始分辨率的 就完美了~~~
- oicqgod回复13#cgs001550
在网上搜了一圈,没找到直接获取图片原始大小(高、宽)的办法,这样就没办法指定尺寸输出了。
有一个替代办法,就是在图片导出前将要导的图片放大到原始尺寸进行导出,然后再将其缩小到放大前的尺寸。
试了一下,可行,但对速度有影响,毕竟要导出的每张照片都要这么折腾一下。
在附件中又加了一张未压缩的图片,测试可以按原尺寸输出,你试一下吧。Excel 图片导出(图片原始尺寸导出).zip(4.98 MB)
- cgs001550非常nice 谢谢兄弟!
- lgazg厉害了。。。怪狗宠物