要将悬浮图切换为嵌入单元格图片,您可以使用以下的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编辑器中的模块中,并在需要的时候执行它。执行后,它将删除指定范围内的现有图表,并在该范围内插入指定的图片。请确保指定的图片文件存在,并使用正确的文件路径

表格用vb将悬浮图切换为嵌入单元格图片

原文地址: https://www.cveoy.top/t/topic/h4VZ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录