这将是什么让你开始.
在userform上放置两个ComboBox和两个Image Controls.

假设您的工作表看起来像这样

如果UserForm_Initialize()在两个组合框中填充图表名称.例如
Dim ws As Worksheet
'~~> Prepare your form
Private Sub UserForm_Initialize()
Set ws = ThisWorkbook.Sheets("Sheet1")
Dim ChartObj As ChartObject
For Each ChartObj In ActiveSheet.ChartObjects
ComboBox1.AddItem ChartObj.Name
ComboBox2.AddItem ChartObj.Name
Next ChartObj
End Sub
Run Code Online (Sandbox Code Playgroud)
因此,当您运行表单时,它将如下所示

在组合框的单击事件中,使用来自HERE的Stephen Bullen的PastePicture代码在userform中显示图表.例如
Private Sub ComboBox1_Click()
ws.Shapes(ComboBox1.Value).CopyPicture
Set Me.Image1.Picture = PastePicture(xlPicture)
End Sub
Private Sub ComboBox2_Click()
ws.Shapes(ComboBox2.Value).CopyPicture
Set Me.Image2.Picture = PastePicture(xlPicture)
End Sub
Run Code Online (Sandbox Code Playgroud)
这就是表单的外观.
从那以后,现在你有了图表的名称.只需使用它们就可以随意工作.
希望这可以帮助.
