欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > 如何使用VBA识别Excel中的“单元格中的图片”(2/2)

如何使用VBA识别Excel中的“单元格中的图片”(2/2)

2025/11/29 14:38:02 来源:https://blog.csdn.net/taller_2000/article/details/143284761  浏览:    关键词:如何使用VBA识别Excel中的“单元格中的图片”(2/2)

Excel 365升级了新功能,支持两种不同的插入图片方式:

  • 放置在单元格中(Place in cell),新功能,此操作插入的图片下文中简称为单元格中的图片
  • 放置在单元格上(Place over cell),悬浮图片,Excel以前版本一直支持的功能

在这里插入图片描述

两种方式在Excel中的展示效果如下图所示。

在这里插入图片描述

如果希望使用VBA操作单元格中的图片,非常遗憾的是对象模型中并未提供相应的对象,并且该对象不隶属与Shapes或者Pictures对象集合。这就带来的一个棘手的问题,如何使用VBA代码判断一个单元格中是否包含单元格中的图片

示例代码如下:

Function HasPicInCell(rCell As Range) As BooleanOn Error Resume NextrCell.UpdatePictureInCellAlternativeText ""HasPicInCell = (Err.Number = 0)On Error GoTo 0
End Function

【代码解析】
第2行代码设置忽略运行时错误,继续执行后续代码。
第3行代码更新单元格上的图片对象的Alt Text
第5行代码设置函数返回值。

  • 如果未产生运行时错误,即Err.Number = 0,则返回值为True
  • 如果产生运行时错误,,则返回值为False
    第5行代码恢复错误处理机制。

使用如下代码核查A1单元格是否存在单元格中的图片

Sub Demo()Dim c As RangeSet c = Range("A1")Debug.Print IIf(HasPicInCell(c), "", "不") & "存在单元格中的图片"
End Sub

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词