Creating Chart with Excel (ActiveX)

9 Ansichten (letzte 30 Tage)
Eduardo Gaona Peña
Eduardo Gaona Peña am 9 Nov. 2017
Kommentiert: Mike Shives am 15 Aug. 2023
Right now I'm writing the code for the output of an app I developed with the appdesigner, and I'm struggling to make it create a chart using Actx. I'm getting a strange error saying that the method for creating a chart cannot be found :/ Other than that all the commands that I've sent to excel are working just fine....
Line of code used:
Chart=wb.ActiveSheet.ChartObjects.Add();
Any idea what's happening?
Thanks a lot in advance.

Akzeptierte Antwort

Guillaume
Guillaume am 9 Nov. 2017
A lot of VBA examples on the net use Activexxx to refer to various objects. It always befuddles me since that breaks easily (something else, maybe the user, may change what is actually active).
Possibly, the ActiveSheet is not a worksheet to which a Chart object can be added. Rather than using ActiveSheet get the reference to the sheet you actually want to use:
ws = wb.Sheets.Item(sheetnameornumber);
chart = ws.ChartObjects.Add
If that still doesn't work, then I would break down the expression to see which part actually fails:
worksheets = wb.Worksheets; %get the worksheet collection
ws = worksheets.Item(nameorindex); %get a specific worksheet
chartobjects = ws.ChartObjects; %get the chartobject collection of the worksheet
chart = chartobjects.Add; %add a chart
  3 Kommentare
Guillaume
Guillaume am 9 Nov. 2017
AddChart2 is not a method of the Worksheet object. It is a method of the Shapes collection which is a completely different collection from the ChartObjects collection.
Mike Shives
Mike Shives am 15 Aug. 2023
I just tried using ws.ChartObjects.Add and got the message ''Add' requires Model-Based Calibration Toolbox.' any advice?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by