ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 678|回复: 9

[求助] 求助 电子表提取图片

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-1-7 09:22 | 显示全部楼层 |阅读模式


提取 对应名称的图片到E列(多层文件夹),图片大小自动适应E列单元格大小,电子表支持放入其他图库位置提取,提取后的图片保存在表内
请各位大神帮忙

图片导入.rar

39.5 KB, 下载次数: 7

TA的精华主题

TA的得分主题

发表于 2020-1-7 11:35 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2020-1-7 13:37 | 显示全部楼层
附件供参考

图片导入.zip

63.51 KB, 下载次数: 8

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-1-7 14:29 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-1-7 14:33 | 显示全部楼层

您好,这个导入程序放入图片库会卡死,有什么办法解决吗

TA的精华主题

TA的得分主题

发表于 2020-1-7 20:29 | 显示全部楼层
春天的打火机 发表于 2020-1-7 14:33
您好,这个导入程序放入图片库会卡死,有什么办法解决吗

多路径搜索本来就不会很快。。。如果文件夹很乱,层次很多,肯定快不了

TA的精华主题

TA的得分主题

发表于 2020-1-7 21:02 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
之前不是有老师解答了吗,无需重复发贴
试试:
  1. Sub Fr_Pic()
  2. Dim fr, myPath$, rng As Range
  3. Dim i&, j&, k&, n&, r&
  4. 'On Error Resume Next
  5. Call Delshp
  6. myPath = ThisWorkbook.Path & ""
  7. With CreateObject("Wscript.Shell") 'VBA调用Dos命令
  8.      fr = Split(.exec("cmd /c dir /a-d /b /s " & Chr(34) & myPath & Chr(34)).StdOut.ReadAll, vbCrLf) '所有文档含子文件夹
  9. End With
  10. With ActiveSheet
  11.      For i = 2 To .[B65536].End(xlUp).Row + 1
  12.          Set rng = .Range("B" & i)
  13.          If rng <> "" Then
  14.             For j = 0 To UBound(fr)
  15.                 If InStr(fr(j), ".JPG") > 0 Then
  16.                    If Split(Split(fr(j), "")(UBound(Split(fr(j), ""))), ".")(0) = "" & rng.Value Then
  17.                    With ActiveSheet.Pictures.Insert(fr(j))
  18.                         .Top = rng.Offset(0, 3).Top + 2
  19.                         .Left = rng.Offset(0, 3).Left + 2
  20.                         .Height = rng.Offset(0, 3).Height
  21.                         '.Width = rng.Offset(0, 3).Width
  22.                    End With
  23.                    End If
  24.                 End If
  25.             Next
  26.          End If
  27.     Next
  28. End With
  29. End Sub

  30. Sub Delshp()
  31. Dim shp As Shape
  32. For Each shp In ActiveSheet.Shapes
  33.     If shp.Left < Range("F1").Left Then shp.Delete
  34. Next
  35. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2020-1-7 21:03 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
详见附件:
图片导入.rar (48.26 KB, 下载次数: 118)

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-1-8 08:52 | 显示全部楼层
aman1516 发表于 2020-1-7 21:02
之前不是有老师解答了吗,无需重复发贴
试试:

您好,程序只能查询以大写字母结尾的图片后缀,这里想也同时查找小写字母结尾的后缀   (JPG 和  jpg),请问这句该如何修改呢
108.jpg

TA的精华主题

TA的得分主题

发表于 2020-1-8 16:14 | 显示全部楼层
春天的打火机 发表于 2020-1-8 08:52
您好,程序只能查询以大写字母结尾的图片后缀,这里想也同时查找小写字母结尾的后缀   (JPG 和  jpg), ...

代码最前面加上:
Option Compare Text

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-20 06:24 , Processed in 0.060385 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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