Board logo

標題: [發問] 請問一下函數的vba [打印本頁]

作者: afu9240    時間: 2019-5-13 09:58     標題: 請問一下函數的vba

各位高手大大們好

   附件檔想請教為何無法執行,,有寫了一段vba的sumif但無法執行~求解惑 謝謝
[attach]30575[/attach]
作者: rouber590324    時間: 2019-5-13 11:11

試試

Sub AAA()
Dim M As Long
Sheets("工作表1").Select
Range("A1").Select
Sheets("工作表1").[D265536].ClearContents

For M = 2 To Sheets("工作表1").[A65536].End(xlUp).Row

Sheets("工作表1").Cells(M, 4) = Application.SumIf(Sheets("工作表2").Range("B:B"), Sheets("工作表1").Cells(M, 1), Sheets("工作表2").Range("E:E"))

Next
End Sub
作者: afu9240    時間: 2019-5-13 13:48

回復 2# rouber590324

感謝r大回覆,, R大 用您的CODE套入SUMIFS也可以用,  這邊想請教要如何修改Code一次性將儲存格資料計算帶出呢~求協助~TKS
code能在簡化嗎???謝謝[attach]30576[/attach]
作者: rouber590324    時間: 2019-5-14 10:53

DEAR SIR
用涵數即可吧.如下 c2公式  餘以此類推

=SUMPRODUCT((工作表2!$B$2B$65536=A2)*(工作表2!$C$2C$65536=C1),工作表2!$E$2E$65536)
作者: 准提部林    時間: 2019-5-15 10:32

資料不多, 可用這個:
Sub AAA()
Dim Clmn As Range
Set Clmn = [工作表2!K2].Resize([工作表2!B65536].End(xlUp).Row - 1)
Clmn = "=B2&C2"
With [工作表1!C2].Resize([工作表1!A65536].End(xlUp).Row - 1, 3)
     .Formula = "=SUMIF(工作表2!$K:$K,$A2&C$1,工作表2!$E:$E)"
     .Value = .Value
     .Replace 0, "", Lookat:=xlWhole
End With
Clmn.ClearContents
End Sub

'================================
資料很多, 用這個:
Dim xD, Arr, Brr, i&, j&, T$
Set xD = CreateObject("Scripting.Dictionary")
Arr = Range([工作表2!E1], [工作表2!B65536].End(xlUp))
For i = 2 To UBound(Arr)
    T = Arr(i, 1) & Arr(i, 2)
    xD(T) = xD(T) + Arr(i, 4)
Next i
'----------------------------
Arr = Range([工作表1!E1], [工作表1!A65536].End(xlUp))
ReDim Brr(1 To UBound(Arr) - 1, 1 To 3)
For i = 2 To UBound(Arr)
For j = 1 To 3
    T = Arr(i, 1) & Arr(1, j + 2)
    Brr(i - 1, j) = xD(T)
Next j
Next i
'----------------------------
[工作表1!C2].Resize(UBound(Arr) - 1, 3).Value = Brr
End Sub

'>>>>
作者: afu9240    時間: 2019-5-16 09:10

回復 5# 准提部林


    感謝淮大提供,有點難 需要看一下~~感謝*10000
作者: afu9240    時間: 2019-5-16 09:19

回復 5# 准提部林


    淮大 請教一下~工作表2!k2根本沒資料為什麻  您得code有 工作表2!k2跟工作表2!k2:k2
作者: 准提部林    時間: 2019-5-16 09:56

回復 7# afu9240


K欄是用來做輔助公式, 利用完再清除,
將[生產批號]&[分類]連接成獨立字串, 即可利用來做SUMIF的[索引值],

因資料行數可能不確定,
SUMPRODUCT若做全欄引用, 可能使檔案卡死,
SUMIF公式的全欄引用, 效率比SUMIFS高.
作者: afu9240    時間: 2019-5-16 14:46

回復 8# 准提部林


    懷大真強~~感謝懷大回覆  謝謝




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