Board logo

標題: [發問] 請教各位高手大大vba 的index問題~ [打印本頁]

作者: ii31sakura    時間: 2014-5-6 18:23     標題: 請教各位高手大大vba 的index問題~

請問各位大大,能否請幫忙解決一下小弟的困擾?

主要問題為:
分頁(異常批統計) 的L & M 欄內的值用以下的程式碼可以求得,但小弟想要那兩欄自動去換算除以J欄的資料、
例:(異常批統計)的L 2資料 / J2資料、(異常批統計)的M 2資料 / M2資料 ,(往下類推)
但一直不知道是卡在哪部份、故在此求助,感謝各位。

程式碼:
Public Sub 異常批統計_1判定()
Dim ARR
Dim ARR1
Dim arr2
Dim arr3 'test
Dim arr4 ' test1
Dim c As Integer

    For i = 2 To [h65536].End(3).Row
    Set findvalue = Worksheets("批異常Data").Columns("O").Find(What:=Worksheets("異常批統計").Cells(i, 8))
   
    If findvalue.Row = 1 Then
     'With Worksheets("批異常Data") (目前不需使用)
'       arr2 = Worksheets("批異常Data").Range("b" & 1, "g" & findvalue.Row + 1) 'index (目前不需使用)
'       ARR = Worksheets("批異常Data").Range("O" & 1, "O" & findvalue.Row + 1) 'match (目前不需使用)
        Else
      
       arr2 = Worksheets("批異常Data").Range("H" & findvalue.Row - 1, "I" & findvalue.Row)
       ARR = Worksheets("批異常Data").Range("O" & findvalue.Row, "O" & findvalue.Row + 1)
       c = Application.Match(findvalue, ARR, 0)
                          
       Worksheets("異常批統計").Range("L" & i, "M" & i) = Application.Index(arr2, c + 1)   '問題點...
                     

    End If

Next
End Sub
作者: ii31sakura    時間: 2014-5-6 18:28

真是不好意思,沒有附到附檔,在此附上、再請麻煩一下大家了。
作者: owen06    時間: 2014-5-6 20:55

本帖最後由 owen06 於 2014-5-6 20:57 編輯

回復 2# ii31sakura

     你試試
    ARR = Worksheets("批異常Data").Range("O" & findvalue.Row & ":O" & findvalue.Row + 1)
作者: ii31sakura    時間: 2014-5-6 22:27

回復 3# owen06


    不好意思 owen06 大大,請問我是不是哪邊有錯誤、因我照這個方法去執行結果還是一樣,
我已將內容修改放到附件、如果可以再請麻煩幫我看一下,感謝你~
作者: owen06    時間: 2014-5-6 23:04

回復 4# ii31sakura


    很抱歉,我沒注意看到你是要那二欄都除以j欄,
    你在『Worksheets("異常批統計").Range("L" & i, "M" & i) = Application.Index(arr2, c + 1)   '問題點..』   的下面輸入
        Cells(i, 12) = Cells(i, 12) / Cells(i, 10)
        Cells(i, 13) = Cells(i, 13) / Cells(i, 10)
    他就會把那二欄都除以對應的j欄內容了
作者: ii31sakura    時間: 2014-5-7 08:34

owen06 大大、太謝謝你了~原來這種寫法也行、讓小弟學到了,感謝幫忙囉~




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)