欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

EXCEL VBA批量下载URL链接地址图片、URL链接地址图片转为图片

程序员文章站 2023-12-25 18:00:57
...

在EXCEL里,需要大量引用网上链接图片,例如python的爬虫把图片链接爬取之后,需要在EXCEL内展示图片,可以使用VBA批量将URL链接地址图片转为图片;

1.复制以下代码到VBA内,(不知道VBA是什么的传送门:https://blog.csdn.net/weixin_39416561/article/details/82428684

Sub 链接转图片()

For Each Rng In Selection  '循环活动工作表中的各个超链接
    If UCase(Rng.Value) Like "*.JPG" Or UCase(Rng.Value) Like "*.JPEG" Or UCase(Rng.Value) Like "*.PNG" Or UCase(Rng.Value) Like "*.GIF" Then  '如果链接的位置是jpg或gif图片(此处仅针对此两种图片类型,更多类型可以通过建立数组或字典或正则来判断)
        'Set Rng = HLK.Parent.Offset(, 0)  '设定插入目标图片的位置
        With ActiveSheet.Pictures.Insert(Rng.Value)  '插入链接地址中的图片
            If .Height / .Width > Rng.Height / Rng.Width Then  '判断图片纵横比与单元格纵横比的比值以确定针对单元格缩放的比例
                .Top = Rng.Top
                .Left = Rng.Left + (Rng.Width - .Width * Rng.Height / .Height) / 2
                .Width = .Width * Rng.Height / .Height
                .Height = Rng.Height
            Else
                .Left = Rng.Left
                .Top = Rng.Top + (Rng.Height - .Height * Rng.Width / .Width) / 2
                .Height = .Height * Rng.Width / .Width
                .Width = Rng.Width
            End If
        End With
        Rng.Value = ""   '删除单元格的图片链接
    End If
Next
End Sub

2.选中URL单元格,运行VBA即可;

EXCEL VBA批量下载URL链接地址图片、URL链接地址图片转为图片

代码会自动根据单元格大小调整图片大小及位置,结果如下:

EXCEL VBA批量下载URL链接地址图片、URL链接地址图片转为图片

上一篇:

下一篇: