方法对象范围全局失败

时间:2017-07-18 12:00:14

标签: excel excel-vba runtime-error vba

我的代码继续获取对象__global错误的方法范围,即使我已初始化工作表并确保名称正确。有帮助吗?该代码应该是找到一系列单元格,其中数据将被放入第二个电子表格

Sub potential()

'Add hours for potential work to generate function

Sheets("Resourcing Sit-Rep").Select

p = Range("Potential person").End(xlDown).Row - Range("Potential person").Row
For k = 1 To p

    For j = 1 To 187
        If Range("hours").Offset(k, j).Value > 0 Then

        Sheets("Resource Forecast").Select
            Val5 = Range("Potential person").Offset(k, 1).Value
            Val6 = Range("Potential person").Offset(k).Value
            Val7 = Range("hours").Offset(k, j).Value
            Val8 = Range("date").Offset(0, j).Value

        Sheets("Resourcing Sit-Rep").Select
            A = Range("Leader").Offset(0, 2).End(xlDown).Row - Range("Leader").Offset(0, 2).Row + 1

            Range("Leader").Offset(A, 2).Formula = Sheets("Resource Forecast").Range("Project_Number").Value & " (" & Sheets("Resource Forecast").Range("Project_Name").Value & ") - " & Val5 & " POTENTIAL WORK"
            Range("Leader").Offset(A, 3).Formula = Val6
            Range("Leader").Offset(A, 4).Formula = Val7 / 7.5
            Range("Leader").Offset(A, 5).Formula = Val8

         Else

         End If

    Next j

Next k
'Range("Leader").Offset(1, 0).Resize(1, 2).AutoFill Destination:=Range("A4", Cells(Range("Leader").Offset(0, 2).End(xlDown).Row, 2)), Type:=xlFillDefault

End Sub

1 个答案:

答案 0 :(得分:1)

我要说的第一件事是你应该始终使用特定的工作表对象限定你的范围。

但你的问题是:

Range("Potential person")无效。 范围方法无法找到这样的范围。

Excel命名范围中不能包含空格,因此您的范围中有下划线或其他内容。尝试没有空格的简单测试,你应该取得进步。