我是一个新的VBA用户,并试图根据系列名称格式化图表系列。我想使用vlookup来引用系列名称并返回一个已定义的MarkerStyle,MarkerForegroundColor,MarkerSize等。我想要这样做,因为我有一个系列名称的大名单,每个名称都需要一个独特的标记,我需要大量的图表。我已经开始了一个代码,但不断收到1004错误:无法获取WorksheetFunction类的VLOOKUP财产“:Excel VBA格式化图表系列与Vlookup
Sub ChartFormattingVlookup()
Dim mySeries As Series
Dim cht As ChartObject
Dim vbc As Range
Set vbc = Worksheets("VBAChartFormat").Range("A2:I44")
For Each cht In ActiveSheet.ChartObjects
cht.Activate
For Each mySeries In ActiveChart.SeriesCollection
With mySeries
.MarkerSize = Application.WorksheetFunction.VLookup(mySeries, vbc, 7, False)
.MarkerStyle = Application.WorksheetFunction.VLookup(mySeries, vbc, 6, False)
End With
Next mySeries
Next cht
End Sub
我会很感激的任何帮助或建议。谢谢!
vlookup的第一个参数中的'mySeries'放置不正确。该参数需要范围引用或文字字符串,并且您正在传递一个seriescollection对象。如果你通过了'mySeries.Name',它就会工作,只要查找表有系列名称 –