![]() |
Deleting a chart using VBA
Hi everybody, I've created some code to draw up a chart when a button is pressed. However, I'm trying to find a way for the macro to first check to see if there is already a chart open on the sheet, and if so then delete it before generating the chart. Is this possible? Chart code: Code: -------------------- Charts.Add ActiveChart.ChartType = xlColumnClustered ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("G2:J2,G4:J4"), _ PlotBy:=xlRows ActiveChart.Location Whe=xlLocationAsObject, Name:="Sheet1" With ActiveChart .HasTitle = True .ChartTitle.Characters.Text = "Name1" .Axes(xlCategory, xlPrimary).HasTitle = True .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Month" .Axes(xlValue, xlPrimary).HasTitle = True .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = _ "Text" End With ActiveChart.HasLegend = False ActiveChart.HasDataTable = False ActiveChart.Axes(xlValue).Select With ActiveChart.Axes(xlValue) .MinimumScaleIsAuto = True .MaximumScaleIsAuto = True .MinorUnit = 1 .MajorUnit = 1 .Crosses = xlAutomatic .ReversePlotOrder = False .ScaleType = xlLinear .DisplayUnit = xlNone End With End Sub -------------------- Cheers :) -- Daminc ------------------------------------------------------------------------ Daminc's Profile: http://www.excelforum.com/member.php...o&userid=27074 View this thread: http://www.excelforum.com/showthread...hreadid=476179 |
Deleting a chart using VBA
Dominic,
On Error Resume Next ActiveSheet.ChartObjects.Delete HTH, Bernie MS Excel MVP "Daminc" wrote in message ... Hi everybody, I've created some code to draw up a chart when a button is pressed. However, I'm trying to find a way for the macro to first check to see if there is already a chart open on the sheet, and if so then delete it before generating the chart. Is this possible? Chart code: Code: -------------------- Charts.Add ActiveChart.ChartType = xlColumnClustered ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("G2:J2,G4:J4"), _ PlotBy:=xlRows ActiveChart.Location Whe=xlLocationAsObject, Name:="Sheet1" With ActiveChart .HasTitle = True .ChartTitle.Characters.Text = "Name1" .Axes(xlCategory, xlPrimary).HasTitle = True .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Month" .Axes(xlValue, xlPrimary).HasTitle = True .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = _ "Text" End With ActiveChart.HasLegend = False ActiveChart.HasDataTable = False ActiveChart.Axes(xlValue).Select With ActiveChart.Axes(xlValue) .MinimumScaleIsAuto = True .MaximumScaleIsAuto = True .MinorUnit = 1 .MajorUnit = 1 .Crosses = xlAutomatic .ReversePlotOrder = False .ScaleType = xlLinear .DisplayUnit = xlNone End With End Sub -------------------- Cheers :) -- Daminc ------------------------------------------------------------------------ Daminc's Profile: http://www.excelforum.com/member.php...o&userid=27074 View this thread: http://www.excelforum.com/showthread...hreadid=476179 |
Deleting a chart using VBA
Dominic, On Error Resume Next ActiveSheet.ChartObjects.Delete HTH, Bernie MS Excel MVP Cheers Bernie, is "On Error Resume Next" a standard error trap then? -- Daminc ------------------------------------------------------------------------ Daminc's Profile: http://www.excelforum.com/member.php...o&userid=27074 View this thread: http://www.excelforum.com/showthread...hreadid=476179 |
All times are GMT +1. The time now is 05:14 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com