在Excel中dynamic更改图表

我有以下问题。 我有一个相对大量的Excel图表,我希望能够自动更改图表的大小(即宽度和高度)。 通过自动我的意思是:我有两个单元格,一个用于高度,一个用于宽度,当我改变它们时,图表自动改变,而不必按任何其他button或任何东西。 例如,单元格A1的宽度值为100,单元格B1的高度值为200。 所以,当我把A1变成200,B1变成300时,我所有的图表都变得更大了。

到目前为止我所做的是能够遍历所有图表,并更改形状,但是我需要先点击button才能运行我的macros。 我想知道是否有办法改变图表的形状而不必按下任何button,只要改变两个单元格的宽度和高度就可以了。 提前致谢。

在vbaproject中,打开微软的excel对象,然后select你有A1:B1的表格,然后写入

Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Target.Worksheet.Range("A1:B1")) Is Nothing Then 'put your macro here' End If End Sub 

这样,每次在A1或B1中发生变化时,都可以运行macros。 注意你在A1或B1中写的内容,在运行你的macros之前,你应该对这些值进行一些检查