[VBA ] 印出 1~100 質數

看板Visual_Basic作者 (pp)時間7年前 (2017/04/14 12:45), 編輯推噓-1(128)
留言11則, 6人參與, 最新討論串1/1
Public Sub test() Dim c As Range, i As Integer, a As Integer Range("A1").Value2 = 2 Range("A2").Value2 = 3 i = 5 For Each c In Range("A3:A100") ccc: For a = 3 To 100 While (a < i) If i Mod a = 0 Then GoTo ccc a = a + 2 Next a c.Value = i i = i + 2 Next i End Sub 請問問題出在那??? 請幫忙 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.52.130.231 ※ 文章網址: https://www.ptt.cc/bbs/Visual_Basic/M.1492145106.A.322.html

04/14 14:42, , 1F
那你得到什麼錯誤
04/14 14:42, 1F

04/14 21:27, , 2F
...
04/14 21:27, 2F

04/14 21:48, , 3F
標起第一個Next,然後說編譯錯誤,說有Next,卻沒有For
04/14 21:48, 3F

04/14 21:53, , 4F
我跑i迴圈是OK的,可是a的if跟Goto不太會寫,a迴圈亦不知
04/14 21:53, 4F

04/14 21:53, , 5F
04/14 21:53, 5F

04/17 07:58, , 6F
For Each c --> Next c
04/17 07:58, 6F

04/19 22:23, , 7F
While後面也沒有結束的地方。
04/19 22:23, 7F

04/21 13:56, , 8F
Visual Basic 的 While 是以 End While 結束, 不是 Next
04/21 13:56, 8F

04/21 14:01, , 9F
唔嗯, 沒注意到是 VBA, 那個 While 要用 Wend 結束
04/21 14:01, 9F

04/21 14:01, , 10F
總之不是 Next, 所以你的 Next a 是錯的
04/21 14:01, 10F

04/21 14:05, , 11F
Next 只會跟 For / For Each 在用, 而且不一定要附變數名
04/21 14:05, 11F
文章代碼(AID): #1Oy5FICY (Visual_Basic)