ブックの1枚のシートからコストを計算するコードを作成しました。 は、計算した後、私は、その値が同じワークブックVBA - 計算された値を別のシートのセルに割り当てる
Sub cost()
Dim irow As Integer
Dim pointer1 As Single
Dim Kgl_PG_Campaign As Single
Kgl_PG_Campaign = 0
pointer1 = 0
irow = 2
Do Until Cells(irow, 3).Value = ""
If Worksheets("ws2").Cells(irow, 11).Value = "Kagal" And Cells(irow, 12).Value = "PG" And Cells(irow, 24).Value = "Campaign" Then
pointer1 = Cells(irow, 29).Value
Kgl_PG_Campaign = Kgl_PG_Campaign + pointer1
End If
irow = irow + 1
MsgBox Kgl_PG_Campaign
Worksheets("COPQ_online").Range("C7").Value = Kgl_PG_Campaign
Loop
End Sub
Error - run time error 9 - script out of range
の別のシートに表示します。
多分あなたはこのような何かの後にある
コードをステップ実行すると、どこで失敗しますか?すべてのシートがブックにありますか? –
あなたのエラーについては、いくつかの名前付き参照でエラーがあるようです。ワークシート名が正しいかどうか確認してください。 [下付き文字が範囲外です(エラー9)](https://msdn.microsoft.com/en-us/library/aa264519(v=60).aspx)も参照してください。また、 'If'文の' And'部分と 'pointer1 = Worksheets(" ws2 ")の行に' Worksheets( "ws2")セル(irow、##)を入れてください。私は、29)。値 '。ワークシート参照がなければ、ActiveWorkbookを参照します。 –
次の行は、ワークシート(COPQ_online)の問題を引き起こしています。範囲(「C7」)。値= MsgBoxまでのKgl_PG_Campaign Kgl_PG_Campaignコードは問題なく動作しています。 –