[VBA ] For迴圈內的變數設定(已解決)
試了幾次,試不出來。
從excel匯進24格資料,
比較這24格資料的數值是否有異動(a1~ax格),
做完之後換(a2~b2格),……,重覆做n次。
a b c d e f g ...... x
1
2
3
.
.
n
最後是寫出來了,但迴圈的部份卡住了,
只好用2x行把它寫出來,程式變的很長,
問題應該是卡在變數設定,把程式精簡、修改一下,比較好說明。
這邊是ok的 這邊是不ok的,二邊只差一行(亮白色)
Public Sub aaa() Public Sub aaa()
Var1 = 3 Var1 = 3
Var2 = 4 Var2 = 4
n = 1 n = 1
m = 2 m = 2
If Var1 <> Var2 If Varn <> Varm
Then var25 = var25 + 1 Then var25 = var25 + 1
Range("a25").Value = var25 Range("a25").Value = var25
End Sub End Sub
這邊不ok的原因是n、m、varn、varm是不同的參數,
無法透過n=1、m=2讓varn、varm視為var1、var2,
我在寫的時候,是用
for n = 1 to 23
m = n + 1
If Varn <> Varm Then var25 = var25 + 1
next
因為Varn、Varm無法用這種方式指定,就寫不出來了。
請板上的vba高手解答一下,感謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.231.231.207
→
04/30 07:32, , 1F
04/30 07:32, 1F
附上程式碼供參考
Public Sub aaa()
Dim var(24) As Double
For i = 3 To 10
var(0) = 0
var(1) = Math.Sgn(Range("bj" & i).Value)
var(2) = Math.Sgn(Range("bv" & i).Value)
var(3) = Math.Sgn(Range("bk" & i).Value)
var(4) = Math.Sgn(Range("bw" & i).Value)
var(5) = Math.Sgn(Range("bl" & i).Value)
var(6) = Math.Sgn(Range("bx" & i).Value)
var(7) = Math.Sgn(Range("bm" & i).Value)
var(8) = Math.Sgn(Range("by" & i).Value)
var(9) = Math.Sgn(Range("bn" & i).Value)
var(10) = Math.Sgn(Range("bz" & i).Value)
var(11) = Math.Sgn(Range("bo" & i).Value)
var(12) = Math.Sgn(Range("ca" & i).Value)
var(13) = Math.Sgn(Range("bp" & i).Value)
var(14) = Math.Sgn(Range("cb" & i).Value)
var(15) = Math.Sgn(Range("bq" & i).Value)
var(16) = Math.Sgn(Range("cc" & i).Value)
var(17) = Math.Sgn(Range("br" & i).Value)
var(18) = Math.Sgn(Range("cd" & i).Value)
var(19) = Math.Sgn(Range("bs" & i).Value)
var(20) = Math.Sgn(Range("ce" & i).Value)
var(21) = Math.Sgn(Range("bt" & i).Value)
var(22) = Math.Sgn(Range("cf" & i).Value)
var(23) = Math.Sgn(Range("bu" & i).Value)
var(24) = Math.Sgn(Range("cg" & i).Value)
For n = 0 To 23
If var(n) <> var(n + 1) Then var25 = var25 + 1
Range("Cp" & i).Value = var25
var25 = 0
Next
Next
End Sub
※ 編輯: ricewine 來自: 61.231.231.207 (04/30 10:44)
→
04/30 11:55, , 2F
04/30 11:55, 2F
→
04/30 11:55, , 3F
04/30 11:55, 3F
→
04/30 11:56, , 4F
04/30 11:56, 4F
→
04/30 13:24, , 5F
04/30 13:24, 5F
→
04/30 13:24, , 6F
04/30 13:24, 6F
※ 編輯: ricewine 來自: 61.231.231.207 (04/30 13:34)
推
04/30 15:14, , 7F
04/30 15:14, 7F
→
04/30 15:15, , 8F
04/30 15:15, 8F
→
04/30 15:16, , 9F
04/30 15:16, 9F