2015-11-02 70 views
2

我遇到了循環溢出的問題。這裏是我的代碼:VBA循環溢出

Private Sub DivideKPI() 
    Dim FRow As Long 
    Dim lrow As Long 
    Dim PRow As Long 

    Dim CurrentSheet As Worksheet 
    Set CurrentSheet = Excel.ActiveSheet 

    FRow = CurrentSheet.UsedRange.Cells(1).Row 
    lrow = CurrentSheet.UsedRange.Rows(CurrentSheet.UsedRange.Rows.count).Row 

    For PRow = lrow To 2 Step -1 
     CurrentSheet.Cells(PRow, "AO").Value = Round(((CurrentSheet.Cells(PRow, "AK").Value)/(CurrentSheet.Cells(PRow, "AM").Value)), 2) 
    Next PRow 
End Sub 

如果我把'PRow'手動代替循環,結果可以產生。但是我需要循環這個數據。如何做到這一點?我已經使用CLng,但也溢出。 謝謝!

*示例數據

AK   AM 
25.35  72 
224.92  24 

回答

0

我不相信PRow可以是你的問題。嘗試:

For PRow = lrow To 2 Step -1 
     CurrentSheet.Cells(PRow, "AO").Value2 = Round(((CurrentSheet.Cells(PRow, "AK").Value2)/(CurrentSheet.Cells(PRow, "AM").Value2)), 2) 
    Next PRow 
+0

它仍然是一樣的。溢出TT.TT @Rory – IlhamideaZ

+0

發生錯誤時,「PRow」的值和該行的AK和AM列中的單元格的值是什麼? – Rory

+0

從循環開始。我嘗試通過執行 CurrentSheet.Cells(PRow,「AP」)。Value = PRow 但它已經溢出@Rory。 – IlhamideaZ