返回列表 上一主題 發帖

[發問] for next

[發問] for next

For k = 70 To 4
next
我想加個條件變成 k= 4 to 70也就是下面二選一
For k = 70 To 4
for  k= 4 to 70
----------------
For k = 70 To 4 step -1
next
for  k= 4 to 70
next
因為 我的 for next  裡面還有很多程式碼
如果改成上面會比較複雜,不容易看
不知有無較簡單的改法??

下面的改法
錯誤訊息 有else 郤沒有 IF
If Range("j16") = 1 Then
For k = 70 To 4
Else
For k = 4 To 70
End If
next

  1. If Range("j16") = 1 Then
  2. For k = 70 To 4
  3. 程式碼
  4. next k
  5. Else
  6. For k = 4 To 70
  7. 程式碼
  8. next k
  9. End If
複製代碼
請參考看看!
我是斯多

TOP

回復 1# t8899

也可以改用 select case
  1. Dim Number
  2. Number = 8    ' 設定變數初值。
  3. Select Case Number    ' 判斷 Number 的值。
  4. Case 1 To 5    ' Number 的值在 1 到 5 之間,是非排它性的。
  5.     Debug.Print "Between 1 and 5"
  6. ' 下一個 Case 子句是本範例中唯一判斷值為 True 的子句。
  7. Case 6, 7, 8    ' Number 的值在 6 到 8 之間。
  8.     Debug.Print "Between 6 and 8"
  9. Case 9 To 10    ' Number 的值為 9 或 10。
  10. Debug.Print "Greater than 8"
  11. Case Else    ' 其它數值。
  12.     Debug.Print "Not between 1 and 10"
  13. End Select
複製代碼
我是斯多

TOP

r1 = 4: r2 = 70: p = 1
If Range("j16") = 1 Then r1 = 70: r2 = 4: p = -1
For k = r1 To r2 Step p
    N = N + p
Next k

TOP

        靜思自在 : 脾氣嘴巴不好,心地再好也不能算是好人。
返回列表 上一主題