看板 Visual_Basic 關於我們 聯絡資訊
大家好 看書自學excel vba有個基本概念不懂 例如1到100能被3整除的數字依序寫入A欄 Sub mod3() Dim i As Integer xrow = 1 For i = 1 To 100 If i Mod 3 = 0 Then Cells(xrow, "A").Value = i xrow = xrow + 1 End If Next End Sub 那我把xrow = xrow + 1和 End If 對調 會造成每三列才會出現數字 原因為何?謝謝! Sub mod3() Dim i As Integer xrow = 1 For i = 1 To 100 If i Mod 3 = 0 Then Cells(xrow, "A").Value = i End If xrow = xrow + 1 Next End Sub -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.143.80.229 ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1513348419.A.45E.html
niklee29: If 裡面的因為有整除條件所以迴圈遞增三次才會顯示文字 12/15 23:37
niklee29: ,而你放在end if外頭的是累積值,又不是顯示文字的命令 12/15 23:37
niklee29: (顯示文字的命令仍然在整除判斷式裡當然會有這樣的結果 12/15 23:37
niklee29: )... 12/15 23:37
vincent0926: 在if外會在for迴圈中累進,放IF內唯條件成立才累進 12/26 15:57