返回列表 上一主題 發帖

sumifs 轉成 vba 語法

回復 20# samwang
Dear samwang,
您好!您所附的檔案測試正常。我改了您的VBA至我的EXCEL上,有問題,畫面如下

紅字是我改過的
----------------------------------------------------------------------
Sub test22()
Dim Arr, Brr, xD, i&, T$
Set xD = CreateObject("Scripting.Dictionary")
Tm = Timer
Arr = [繳庫量!g1].CurrentRegion
For i = 2 To UBound(Arr)
    T = Arr(i, 1)
    xD(T) = Val(xD(T)) + Val(Arr(i, 13))
Next
With Sheets("Analysis")
    Brr = .Range(.[a1], .[a65536].End(3))
    For i = 1 To UBound(Brr)
        Brr(i, 1) = xD(Arr(i, 1) & "")
    Next
    .[g1].Resize(UBound(Brr)) = Brr
End With
MsgBox Timer - Tm
End Sub
----------------------------------------------------------------------



Just do it.

TOP

回復 20# samwang
Dear samwang,
早上好,可以幫我看一下附加檔案嗎?
我有實際依據需求,調整了excel欄位位置,以及修改過您的VBA
可是在工作表"Analysis"內的H欄位卻是帶出空白
可以幫我看內容哪裡有誤嗎?
感恩!


    1111.rar (21.77 KB)
Just do it.

TOP

回復 22# jsc0518

Arr-->Brr
Brr(i, 1) = xD(Brr(i, 1) & "")

TOP

回復 23# samwang
Dear samwang,
OK,可以用。在與您請教一下,執行後H1欄位的"VBA"都會變成空白。
是否可以修訂?



Sumif-VBA-V2-ok-可用.rar (21.67 KB)
Just do it.

TOP

回復  samwang
Dear samwang,
OK,可以用。在與您請教一下,執行後H1欄位的"VBA"都會變成空白。
是否可 ...
jsc0518 發表於 2021-12-10 15:03


   .[h1].Resize(UBound(Brr)) = Brr
    .[h1] = "VBA"
End With

TOP

回復 25# samwang
Dear samwang,
Thank you so much.感謝您囉!  ^_^
Just do it.

TOP

本帖最後由 mdr0465 於 2022-4-26 10:31 編輯

回復 26# samwang


samwang你好
我借用你的完成品修改一下, 將sumif變成橫向的,第一次運算是成功的, 但不知為何當第二次運算時就會失敗, 請幫忙查看並指點我錯在那里,




謝謝

Sumif VBA.rar (24.19 KB)

TOP

回復  samwang


samwang你好
我借用你的完成品修改一下, 將sumif變成橫向的,第一次運算是成功的, 但 ...
mdr0465 發表於 2022-4-26 10:30


回填資料時要先舊的答案先清除,我想你應該知道如何做,寫得很好,自己在試試看,謝謝

TOP

回復 28# samwang

SAMWANG師兄,你好

謝謝你的指導, 我想想怎樣在回填資料時先舊的答案先清除,

謝謝你耐心教導, 謝謝

TOP

回復 29# mdr0465


另外,資料回填時也有錯位問題,多善用F8就可知道問題在哪裡,謝謝

TOP

        靜思自在 : 【做人的開始】每一天都是故人的開始,每一個時刻都是自己的警惕。
返回列表 上一主題