入黎免費幫你砌excel表 / 教你formula (6)

994 回覆
99 Like 7 Dislike
2021-03-31 22:25:04
咁睇你接唔接受到我講既方法
管理上會易d
2021-03-31 22:35:42
係呀
可以點整?thanks
2021-03-31 22:36:14
佢個方法好好喎
俾我寫都係咁上下
你而家係run唔到?
2021-03-31 22:42:41
條formula 用緊 {4,11}

佢係3月最後一個Monday 開始轉
10月最後一個MONDAY 又轉返

睇唔明條formula
唔知要點改
2021-03-31 22:50:17
其實可以係formula度highlight咗再㩒F9就知佢計緊乜
當然你copy出嚟睇都得,但array formula係舊版excel唔會睇得到
2021-03-31 22:56:02

我自己做一次就咁
其實到最後都真係同佢果條差唔多樣
但我估佢係再optimize得好少少
你見我果條係累贅過佢少少

佢{4,11}唔代表咁就有問題
因為佢day入0或者負數咪可以番番去10月
應該都係optimize既原因先寫成咁
2021-03-31 23:03:03
如果你都係唔明
其實可以用番尋常方法做
先計4月第一個星期日係幾時 (date1)
再計10月第一個星期日係幾時 (date2)
check input係唔係 > date1 && < date2
2021-03-31 23:12:52
Thanks

試吓你嗰個先

我意思係我搵到嗰條formula
係3月同10月最後個monday轉

係唔知點由last Monday 轉做first Sunday
2021-03-31 23:15:03
原來佢果條係last monday
2021-03-31 23:26:07
sorry for 1999
2021-03-31 23:37:42
怪得知佢同我唔同樣
不過你check下岩唔岩先
2021-03-31 23:52:38
4月嗰個ok

10月好似遲咗1日
今年10月3日星期日
Formula 嗰度10月4先識轉
2021-04-01 00:00:07
試下改成


淨係多左 +{0,1}
2021-04-01 00:01:22
想問下點樣block 左cell唔比輸入
如果C2果格打左"不正確", 咁D2 同 E2 唔可以入資料
2021-04-01 00:03:49
想問VBA countif 係唔係食唔到兩個range?係咁出mistype error

Sub Countif_Example2()

  Dim ValuesRange As Range
  Dim ResultCell As Variant
  Dim CriteriaValue As Range

  Set ValuesRange = Range("A1:A10")
  Set CriteriaValue = Range("C3:L3")

  ResultCell = WorksheetFunction.CountIf(ValuesRange, CriteriaValue)
ResultCell=sumproduct(ResultCell)
 
End Sub


我想做
=sumproduct (countif(rng1,rng2))
但又唔想用evaluate 大師有無計。
2021-04-01 00:13:12
佢個type應該要係value?
我估你唔可以好似array formula咁塞個array入去
可能要將criteriaValue逐個數countif再拆番個array出黎
2021-04-01 00:13:13
perfect

2021-04-01 00:15:47

你試下咁work唔work
2021-04-01 08:26:20
peter sir 搞左成晚唔係幾run到你話for loop個range

我要做既係咁:
rng1:[1,2,3,4,5]
rng2:[1,2]

sumproduct (countif
出到個integer係2就execute一堆function.

幫幫手
2021-04-01 09:25:23
真係work, 無限感激, 慳左我好多時間
2021-04-01 11:15:18
同埋留意全世界咁多國家,轉daylight savings都唔係同日子轉
記得揀番啱你要嘅rule
2021-04-01 11:30:25
不如自己寫算啦

Dim CheckCell As Cell
Dim CriteriaCell As Cell
Dim rowCounter As Integer
Dim TotalCount As Integer

TotalCount = 0
For each CheckCell in Range(“A1:A10”)
    For each CriteriaCell in Range(“C3:L3”)
      If CheckCell.Value = CriteriaCell.Value Then
         TotalCount = TotalCount + 1
         Exit For
      End If
    Next CriteriaCell
Next CheckCell
2021-04-01 11:36:17
我呢個淨係count總共有幾多個A1:A10既cell value match with C3:L3其中一個

唔熟worksheet function唔係幾知sum product 要做乜
2021-04-01 11:36:27
Sub Countif_Example2()

    Dim ValuesRange As Range
    Dim ResultCell As Integer
    Dim CriteriaValue As Range
    Dim Cell As Range
    
    Set ValuesRange = Range("A1:A10")
    Set CriteriaValue = Range("C3:L3")
    
    For Each Cell In CriteriaValue.Cells
        ResultCell = ResultCell + WorksheetFunction.CountIf(ValuesRange, Cell.Value)
    Next Cell
    
    MsgBox ResultCell
    
End Sub


用你d code再改少少就得
MsgBox 自己del, 比你睇返個數only
2021-04-01 11:42:29

BTW其實睇到個WorksheetFunction.CountIf係食1個range+1個數再return double
你塞2個range比佢, 所以會有mistype error
吹水台自選台熱 門最 新手機台時事台政事台World體育台娛樂台動漫台Apps台遊戲台影視台講故台健康台感情台家庭台潮流台美容台上班台財經台房屋台飲食台旅遊台學術台校園台汽車台音樂台創意台硬件台電器台攝影台玩具台寵物台軟件台活動台電訊台直播台站務台黑 洞