標題:
[發問]
統計各週出貨數量及出貨天數
[打印本頁]
作者:
b9208
時間:
2012-11-13 11:26
標題:
統計各週出貨數量及出貨天數
各位先進您好!
請教統計各週出貨數量及出貨天數
雖然可以運用 SUM 與 CountIF 完成
但由於地點及週次資料多
懇請指導如何使用VBA來完成需求
謝謝
[attach]13109[/attach]
作者:
GBKEE
時間:
2012-11-13 18:27
回復
1#
b9208
試試看
Option Explicit
Sub Ex()
Dim Rng As Range, xRow As Integer, xi As Integer
Set Rng = Sheets("地點").[A4]
With Sheets("統計")
.Range("a4", .Range("q4").End(xlDown)).Clear
xRow = 4
Do While Rng.MergeCells
.Cells(xRow, "A") = Rng
.Cells(xRow, "J") = Rng
.Cells(xRow, "B") = Rng.Cells(1, 2).Text
.Cells(xRow, "k") = Rng.Cells(1, 2).Text
.Cells(xRow, "C") = Rng.Cells(7, 2).Text
.Cells(xRow, "L") = Rng.Cells(7, 2).Text
For xi = 4 To 8
With Rng.Offset(, xi - 1).Resize(7)
Sheets("統計").Cells(xRow, xi) = Application.Sum(.Value)
Sheets("統計").Cells(xRow, xi + 9) = Application.CountIf(.Cells, ">0")
End With
Next
xRow = xRow + 1
Set Rng = Rng.End(xlDown)
Loop
.Range("a4:" & .Range("H4").End(xlDown).Address & ", J4:" & Range("q4").End(xlDown).Address).Borders.Value = 1
End With
End Sub
複製代碼
作者:
c_c_lai
時間:
2012-11-13 21:44
回復
2#
GBKEE
請教 GBKEE 版大:
Sheets("統計").Cells(xRow, xi) = Application.Sum(.Value)
Sheets("統計").Cells(xRow, xi + 9) = Application.CountIf(.Cells, ">0")
複製代碼
.Sum(.Value) 與 .CountIf(.Cells, ">0") 其結果是一致的,
一個是合計、一個是計算值,在實務處理上有所區別嗎?
作者:
b9208
時間:
2012-11-13 23:13
回復
2#
GBKEE
謝謝版主指導
執行可以,也符合需求。
努力學習了解
再次謝謝
作者:
b9208
時間:
2012-11-13 23:16
回復
3#
c_c_lai
SUM是計算儲存格內數值合計
COUNTIF是統計儲存格內數值>0的儲存格數量
二者不同
作者:
c_c_lai
時間:
2012-11-14 05:00
回復
5#
b9208
感謝你的說明,終於體會了 CountIf 的含意,
謝謝你!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)