2

我有一页上有 30 多个小散点图的电子表格。我正在尝试对其进行设置,以便如果您用鼠标单击其中一个图,它会将高度和宽度扩大 400%(锁定纵横比)。您可以通过单击它来增加当前选择的任何图的大小吗?

如果这不可能,我可以将单个调整大小绑定到 ActiveX 按钮吗?我需要一个按钮来处理所有图(无论我决定点击什么),而不需要为每个图表名称使用不同的代码。

有任何想法吗?

谢谢,

杰夫

4

1 回答 1

1

恐怕你的问题没有完美的答案。Excel 不提供在这种情况下可以使用的任何“OnClick”事件。我能想到的最佳答案是使用如下所示的宏,然后为宏分配快捷方式或按钮。这样,当您选择图表并按下分配的快捷方式或按钮时,图表将放大或缩小其大小(基于给定的阈值)。

Sub ResizeChart()
    Dim ChtObj As ChartObject

    'If a chart is selected
    If TypeName(Selection) = "ChartArea" Then
         Set ChtObj = ActiveChart.Parent

         Select Case ChtObj.Height
            Case Is <= 300          '<~~~ Assign threshold value for when to downscale
                ChtObj.Height = ChtObj.Height * 4
                ChtObj.Width = ChtObj.Width * 4
            Case Else
                ChtObj.Height = ChtObj.Height / 4
                ChtObj.Width = ChtObj.Width / 4
        End Select
    End If

End Sub
于 2013-11-05T21:40:30.737 回答