- 帖子
- 31
- 主題
- 12
- 精華
- 0
- 積分
- 69
- 點名
- 0
- 作業系統
- WIN XP
- 軟體版本
- OFFICE 2003
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2011-8-19
- 最後登錄
- 2016-1-2
|
各位先進
可否幫小弟看一下 以下語法 哪裡有錯
我要處理活頁簿理的所有工作表 可是他只能在同一個ws內跑"目前工作表的數量"的次數 沒辦法一個工作表跑完 跑下一個˙ 或是各位大大有更好的寫法?!
Sub A123()
Dim I%, J%, k%
Dim Current As Worksheet
For Each Current In Worksheets
J = Rows(1).End(xlToRight).Column
J = J - 1
Columns(J).Insert Shift:=xlToRight
k = Range("a:a").End(xlDown).Row
For I = 2 To k Step 1
Cells(I, (J + 1)).Formula = "=IF(ISBLANK(OFFSET(0,-1)),"",OFFSET(0,-1)-OFFSET(0,-2))"
Cells(I, (J + 2)).Formula = "=IF(ISBLANK(OFFSET(0,-2)),"",B3+(OFFSET(0,-2)*0.001)-ROUND(RAND()*0.00005,5))"
If Cells(I, (J - 1)) = "" Then
Cells(I, J) = ""
ElseIf Cells(I, (J - 1)) - Cells(I, (J - 2)) > 0 Then
Randomize
Cells(I, J) = Round(((-0.1 - -0.4) * Rnd + -0.4), 1) + Cells(I, (J - 1))
ElseIf Cells(I, (J - 1)) - Cells(I, (J - 2)) < 0 Then
Randomize
Cells(I, J) = Round(((0.3 - 0.1) * Rnd + 0.1), 1) + Cells(I, (J - 1))
End If
Next I
Cells(1, J) = Now()
MsgBox Current.Name
Next
End Sub |
|