2017-07-17 18 views
0

あるスプレッドシートから別のスプレッドシートにデータをプルするための関数を生成しようとしていますが、グローバルなメソッド範囲エラーが発生し続けています。エラーを生成するのは4行目です。どんな解決策ですか?メソッド範囲のエラー

Sub potential() 

    'Add hours for potential work to generate function 

    Worksheets("Resource Forecast").Select 

    ***p = Range("Potential Person").End(xlDown).Row - Range("Potential Person").Row*** (error line) 

    Worksheets("Resourcing Sit-Rep").Select 

    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("person").Offset(k, 1).Value 
       Val6 = Range("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 

答えて

0

その行からEnd(xlDown)を削除します。あなたは(間接参照を使用して)以下を使用することができますやりたい

ここ
Range("Area2").Cells(1, 1).Row - Range("Area1").Cells(1, 1).Row - Range("Area1").Rows.Count 

、あなただけの、あなたがから引く、Area1の最初の行とArea2の最初の行の間の行の量をカウントこの領域の行の量。

+0

私は今、上の行の範囲外の添字を得ていますか? –

+0

'Range'関数の名前(" Area1 "...)を変更しましたか? –

+0

Nopeのみ範囲の部分を変更しました –

関連する問題