需求:通过自动读取相对应列的图片网址,自动添加到图片列,从而完成添加图片

案例:需要将备注列的图片网址添加到图片列的内容

关键代码

'引入API
Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
'Public Declare Function DeleteUrlCacheEntry Lib "wininet" Alias "DeleteUrlCacheEntryA" (ByVal lpszUrlName As String) As Long
'下载函数
Function getImg(url As String, Optional fn As String = "") As String
Dim localFilename As String, lngRetVal As Long
If fn = "" Then fn = Rnd() * & ".jpg"
localFilename = ThisWorkbook.Path & Application.PathSeparator & fn
lngRetVal = URLDownloadToFile(, url, localFilename, , )
' Debug.Print lngRetVal
If lngRetVal = Then
' DeleteUrlCacheEntry url '清除缓存
getImg = localFilename
Else
getImg = ""
End If
End Function
'按钮宏
Sub getImg2()
Dim cel
With Application.COMAddIns("esclient10.connect").Object
For Each cel In Range("_picLink")
If cel.Value <> "" Then
Cells(cel.Row, ).Select
.AddPicture getImg(cel.Value), , cel.Row, '插入图片到sheet1,链接行,第13列
End If
Next
End With
End Sub

其他说明

addpicture 的用法是 addpicture 图片路径,sheet,row,col 图片路径用 getImg(url)去下载

如果要是单一的图片的话, 直接 addpicture 不用 for 循环

ES+VBA 实现批量添加网络图片的更多相关文章

  1. Excel vba:批量生成超链接,添加边框,移动sheet等

    Excel vba 操作 批量生成sheet目录并添加超链接 Sub Add_Sheets_Link() 'Worksheets(5)为清单目录页 '在sheet页上生成sheet页名字并超链接 To ...

  2. ES-PHP向ES批量添加文档报No alive nodes found in your cluster

    ES-PHP向ES批量添加文档报No alive nodes found in your cluster 2016年12月14日 12:31:40 阅读数:2668 参考文章phpcurl 请求Chu ...

  3. ES-PHP向ES批量添加、查询文档报 No alive nodes found in your cluster

    转自: https://blog.csdn.net/itfootball/article/details/53637238 问题描述为了提高保存数据到es消耗的时间,采取积攒到3000条文档的时候才保 ...

  4. java操作elasticsearch实现批量添加数据(bulk)

    java操作elasticsearch实现批量添加主要使用了bulk 代码如下: //bulk批量操作(批量添加) @Test public void test7() throws IOExcepti ...

  5. zabbix利用api批量添加item,并且批量配置添加graph

    关于zabbix的API见,zabbixAPI 1item批量添加 我是根据我这边的具体情况来做的,本来想在模板里面添加item,但是看了看API不支持,只是支持在host里面添加,所以我先在一个ho ...

  6. 百度地图API 批量添加 带检索功能的信息窗口

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  7. yii2批量添加的问题

    作者:白狼 出处:http://www.manks.top/yii2_batch_insert.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否 ...

  8. EF批量添加数据性能慢的问题的解决方案

    //EF批量添加数据性能慢的问题的解决方案 public ActionResult BatchAdd() { using (var db = new ToneRoad.CEA.DbContext.Db ...

  9. Java使用Mysql数据库实现批量添加数据

    EmployeeDao.java //批处理添加数据 public int saveEmploeeBatch(){ int row = 0; try{ con = DBCon.getConn(); S ...

随机推荐

  1. Java Day2(下)

    Java learning_Day2(下) 本人学习视频用的是马士兵的,也在这里献上 <链接:https://pan.baidu.com/s/1qKNGJNh0GgvlJnitTJGqgA> ...

  2. ctf-ping命令执行绕过

    题目连接:http://ctf.klmyssn.com/challenges#Ping 命令执行绕过,试了试过滤了一些:一些命令 但是反引号可以执行命令 通过拼接,可以拼接出来:ls 命令 127.0 ...

  3. 专项:Vuejs面试题集合

    参考网络资源:https://segmentfault.com/a/1190000012315822 1.active-class是哪个组件的属性? 答:active-class是vue-router ...

  4. c++ STL queue:deque+优先队列

    /* queue 模板类需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque队列   类型.一:定义queue(要有头文件#include <qu ...

  5. cdn第三方前端依赖架包共享地址

    https://cdnjs.com/ 可在此网站查找你需要的稳定第三方前端依赖架包

  6. for循环与闭包

    Es5 function box(){ var arr = []; ;i<;i++){ arr[i] = (function(num){ //自我执行,并传参(将匿名函数形成一个表达式)(传递一 ...

  7. Windows DOS下查看硬盘分区

    运行cmd Diskpart //加载 list Disk //列出硬盘 list Volume //列出分区 Select Disk //选择 编号0的硬盘 list Partition //列出当 ...

  8. eclipse无法启动报错、打开Eclipse报错、Eclipse无法打开

    有时候在新的电脑中安装Eclipse的时候总会报一些错误,要么就是环境变量没配好.要么就是JDK没装.要么就是JDK位数与Eclipse位数不同(版本),反正会报一些奇奇怪怪恶心的问题,我第一次装的时 ...

  9. CSS的字体样式

    CSS的字体样式 1. span标签(约定俗成:重要的东西用它括起来) 首选介绍一个约定俗成的东西:span标签.一般将想要突出的东西,比较重要的东西,用span标签括起来. 比如,”学习Java“这 ...

  10. K3违反内码唯一键约束

    K3有时候需要向数据库中插入数据,但是插入的时候遇到主键冲突的错误,可以用如下方法解决. 比如新增联系人时,完整错误如下:? ? 违反了 PRIMARY KEY 约束 'PK_CRM_Contact' ...