看板 Office 關於我們 聯絡資訊
軟體: EXCEL 版本: 2016 大家好 看書自學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/Office/M.1513348567.A.6D0.html
soyoso: 因不管i mod 3 =0是否為0,xrow都會進行累加 12/15 22:39
soyoso: 以原文範例,下面的寫法,和cells(xrow,"a")改為cells(i, 12/15 22:41
soyoso: "a")是相同的 12/15 22:41
newacc: 按F8一步一步看能更清楚你的code在幹麻 12/15 23:02
zzatr: 我用ne大方法看懂so大說啥了,謝謝! 12/15 23:16
zzatr: 所以xrow = xrow + 1放在if裡代表整除才換行,If外就會每次 12/15 23:20
zzatr: 都換行 對吧?! 12/15 23:20
soyoso: 如原po回文所述 12/15 23:22
zzatr: 謝謝你們! 12/15 23:25