首页 > 解决方案 > 运行时错误和需要的对象出现在我身上

问题描述

当我运行此代码时:

Sub protectallsheets()
    Dim singlechart As ChartObject

    For Each singlechart In Subreport.ChartObjects
        singlechart.Chart.SetSourceData Range("B2:B11, D2:D11")
    Next singlechart
End Sub

出现以下错误消息:

所需对象

标签: excelvba

解决方案


对象未初始化,请尝试以下操作:

Sub protectallsheets()
  Dim singlechart As ChartObject
  For Each singlechart in Worksheets("Subreport").ChartObjects

    singlechart.Chart.SetSourceData Range("B2:B11, D2:D11")

  Next singlechart
End Sub

为了避免运行时错误,您可以定义一个选项,让您立即知道缺少的变量,为此,您需要在脚本的开头添加以下行:

Option Explicit

推荐阅读