1
Option Explicit
Public PlotName As String
Public PlotRange As Range
Sub Tester()
Range("TCKWH.V.1").Select
AddPlot ActiveSheet.Range("C9:C13,D9:O13")
End Sub
Sub AddPlot(rng As Range)
With ActiveSheet.Shapes.AddChart
PlotName = .Name
.Chart.ChartType = xlLineMarkers
.Chart.SetSourceData Source:=Range(rng.Address())
.Chart.HasTitle = True
.Chart.ChartTitle.Text = Range("C9")
End With
Set PlotRange = rng
Application.EnableEvents = False
rng.Select
Application.EnableEvents = True
End Sub
Sub RemovePlot(rng As Range)
If Not PlotRange Is Nothing Then
If Application.Intersect(rng, PlotRange) Is Nothing Then
On Error Resume Next
rng.Parent.Shapes(PlotName).Delete
On Error GoTo 0
End If
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
RemovePlot Target
End Sub
我有這段代碼根據通過複選框接受的信息創建圖。但是您不選擇的任何帳戶顯示爲「空白」圖例條目 是否有刪除「空白」圖例條目的宏代碼?Excel CheckBox選擇圖表範圍
你設置'來源範圍:=範圍( 「C9:O13」)'。使用「Series.XValues」和「Series.Values」和「Series.Name」屬性,不需要設置「源」數據,而需要添加/刪除「系列」數據。 –