表格用vb将悬浮图切换为嵌入单元格图片
要将悬浮图切换为嵌入单元格图片,您可以使用以下的VBA代码:
Sub SwitchChartToEmbeddedImage()
Dim ws As Worksheet
Dim cht As ChartObject
Dim rng As Range
Dim img As Picture
' 设置要操作的工作表
Set ws = ThisWorkbook.Worksheets("Sheet1")
' 设置要替换的图表区域范围
Set rng = ws.Range("A1:D10")
' 创建一个新的图片对象
Set img = ws.Pictures.Insert("path/to/image.jpg")
' 调整图片的大小和位置以适应图表区域
With img
.ShapeRange.LockAspectRatio = msoFalse
.Top = rng.Top
.Left = rng.Left
.Width = rng.Width
.Height = rng.Height
End With
' 删除原来的图表
For Each cht In ws.ChartObjects
If Not Intersect(cht.TopLeftCell, rng) Is Nothing Then
cht.Delete
Exit For
End If
Next cht
' 清除图片对象
Set img = Nothing
End Sub
请将代码中的以下部分进行修改以适应您的实际情况:
"Sheet1":要操作的工作表的名称;"A1:D10":要替换的图表区域的范围;"path/to/image.jpg":要插入的图片的文件路径。
您可以将此代码复制粘贴到VBA编辑器中的模块中,并在需要的时候执行它。执行后,它将删除指定范围内的现有图表,并在该范围内插入指定的图片。请确保指定的图片文件存在,并使用正确的文件路径
原文地址: https://www.cveoy.top/t/topic/h4VZ 著作权归作者所有。请勿转载和采集!