运行时错误-2147417848(80010108) - 方法'偏移'对象'范围'失败

时间:2015-02-08 20:34:12

标签: excel-vba charts bubble-chart vba excel

创建以下宏来更新气泡图中使用的图像。工作表“NTA图表”包含气泡图表和工作表“饼图”包含用作气泡图像的饼图。分发服务器是数据点的名称,一个饼图与一个数据点相关。

我现在收到错误“运行时错误-2147417848(80010108) - 对象'范围'的方法'偏移'失败。”当我尝试调试行“strDistributor = chtTemp.TopLeftCell.Offset(-1)”时突出显示。这是在Excel 2003中设计的,但我现在使用的是Excel 2010。

Option Explicit

Sub MakePieMarker()

    Dim chtMain As Chart
    Dim chtTemp As ChartObject
    Dim strDistributor As String
    Dim lngSeries As Long

    Set chtMain = ActiveWorkbook.Charts("NTA Chart")

    With ActiveWorkbook.Worksheets("Pie Charts")
        For Each chtTemp In .ChartObjects
            strDistributor = chtTemp.TopLeftCell.Offset(-1)
            lngSeries = CLng(Mid(strDistributor, 12))
            chtTemp.CopyPicture xlScreen, xlPicture
            chtMain.SeriesCollection(lngSeries).Paste
        Next
    End With


End Sub

1 个答案:

答案 0 :(得分:0)

这似乎是某种错误。解决方法是将该行更改为:

strDistributor = Range(chtTemp.TopLeftCell.Address).Offset(-1).Address

或者这个,取决于你想要的字符串结果:

strDistributor = Range(chtTemp.TopLeftCell.Address).Offset(-1).value

希望它有所帮助。