標題:

VBA~For…Next迴圈的語法。

發問:

如題~With Sheets(1) .Cells(mthcount + 16, 13) ="=SUM(INDIRECT(""O""&MAX($A:$A)-$A$3+16):INDIRECT(""BK""&MAX($A:$A)-$A$3+16))/49" .Cells(mthcount + 16,13).NumberFormatLocal = "0.0_ " .Cells(mthcount + 16, 13).Value =.Cells(mthcount + 16,... 顯示更多 如題~ With Sheets(1) .Cells(mthcount + 16, 13) ="=SUM(INDIRECT(""O""&MAX($A:$A)-$A$3+16):INDIRECT(""BK""&MAX($A:$A)-$A$3+16))/49" .Cells(mthcount + 16,13).NumberFormatLocal = "0.0_ " .Cells(mthcount + 16, 13).Value =.Cells(mthcount + 16, 13).Value .Cells(mthcount + 17, 13) ="=SUM(INDIRECT(""O""&MAX($A:$A)-$A$3+17):INDIRECT(""BK""&MAX($A:$A)-$A$3+17))/49" .Cells(mthcount + 17,13).NumberFormatLocal = "0.0_ " .Cells(mthcount + 17, 13).Value =.Cells(mthcount + 17, 13).Value ︰︰ .Cells(mthcount + 58, 13) ="=SUM(INDIRECT(""O""&MAX($A:$A)-$A$3+58):INDIRECT(""BK""&MAX($A:$A)-$A$3+58))/49" .Cells(mthcount + 58,13).NumberFormatLocal = "0.0_ " .Cells(mthcount + 58, 13).Value =.Cells(mthcount + 58, 13).Value End With Next '………………………………………. '不想寫43次~想改為迴圈︰With Sheets(1) For L = 1 To 43 .Cells(mthcount + L + 15, 13) =.FunctionSum(Range(.Cells(mthcount + L + 15, 15), .Cells(mthcount + L + 15,63))) / 49 .Cells(mthcount + L + 15,13).NumberFormatLocal = "0.0_ " .Cells(mthcount + L + 15, 13).Value =.C科見美語學費ells(mthcount + L + 15, 13).Value End With Next 請問︰上述偵錯部分或整段應該如何修正? 謝謝! 更新: Daniel大師︰ 謝謝您在第一時間就提供多種寫法讓小弟參考!~ 測試OK了! 待時限解除再結案! 感恩喔~^_^a380空中廚房

最佳解答:

字數過多, 直接貼在回答欄, 可改為: With Sheets(1) For L = 1 To 43 DD = 15 + L .Cells(mthcount + DD, 13) = "=SUM(INDIRECT(""O""&MAX($A:$A)-$A$3+" _ & DD & "):INDIRECT(""BK""&MAX($A:$A)-$A$3+" _ & DD & "))/49" .Cells(mthcount + DD, 13) = .Cells(mthcount + L + 15, 13).Value .Cells(mthcount + DD, 13).NumberFormatLocal = "0.0_ " Next End With 試試看! 2011-07-02 16:45:32 補充: 將WITH寫在裡面, 可變成: For L = 1 To 43 DD = 15 + L With Sheets(1).Cells(mthcount + DD, 13) .Value = "=SUM(INDIRECT(""O""&MAX($A:$A)-$A$3+" & DD & _ "):INDIRECT(""BK""&MAX($A:$A)-$A$3+" & DD & "))/49" 2011-07-02 16:45:48 補充: .Value = .Cells(mthcount + DD, 13).Value .NumberFormatLocal = "0.0_ " End With Next 2011-07-02 16:58:17 補充: 再試試這個寫法: With Sheets(1).Cells(mthcount + 16, 13).Resize(43) .Value = "=SUM(INDIRECT(""O""&MAX($A:$A)-$A$3+ROW()):INDIRECT(""BK""&MAX($A:$A)-$A$3+ROW()))/49" .Value = .Value .NumberFormatLocal = "0.0_ " End With

其他解圭賢韓語補習班答:6BD45AA720B3A9F1
arrow
arrow

    moralejudypet 發表在 痞客邦 留言(0) 人氣()