不知道什麼是rgExp
對象在您的代碼中,但我更喜歡定義類型ChartObject
的Object
並將其設置爲我的圖表,然後我可以通過VBA修改它的所有屬性。
要建立一個圖表對象使用:
Set ChtObj = Worksheets("Sheet1").ChartObjects.Add(Left:=100, Top:=100, Width:=100, Height:=100)
建議:遠離ActiveSheet
和ActiveChart
和使用引用的對象了,(其他城市 「工作表Sheet1」 你的表的名字)。
設置了ChtObj
之後,您可以輕鬆修改它With ChtObj
- 請參閱下面的示例代碼。使用ChartObject
Option Explicit
Sub AddSetupChart()
Dim ChtObj As ChartObject
Dim x As Long, y As Long
' set initial size and position of the chart object, will modify them later in the code
Set ChtObj = Worksheets("Sheet1").ChartObjects.Add(Left:=100, Top:=100, _
Width:=100, Height:=100)
' setting some values for the parameters >> just for the example
x = 200
y = 400
With ChtObj
.Left = x ' <-- you can use .Left = rgExp.Left
.Top = y ' <-- you can use .Top= rgExp.Top
' set the source data of the chart object
.Chart.SetSourceData (Worksheets("Sheet1").Range("B3:D5"))
.Chart.ChartType = xlBarStacked ' define the type of the chart
.Chart.HasTitle = True ' add title to the chart
.Chart.ChartTitle.Text = "Chart Test" ' modity the title
' other properties you want to modify
End With
End Sub
代碼示例什麼是'rgExp'?似乎這是相關的。 –
你可以發佈你的其他代碼嗎?我們無法看到你如何定義'rgExp'以及它是如何設置的。 –
你確定'ActiveSheet'是你認爲它的工作表? – Dave