将Excel公式转换为VBA代码
你可以请build议如何将公式转换为VBA代码
=SUMPRODUCT(SUBTOTAL(3,OFFSET((AT2:AT644),ROW(AT2:AT644)-MIN(ROW(AT2:AT644)), ,1)) * (AT2:AT644="6"))
我这样做,但问题如何使用当前代码中的“偏移”?
Application.WorksheetFunction.SumProduct(Application.WorksheetFunction.Subtotal(3, Application.Range.Offset(("AT2:AT644"), Application.Rows("AT2:AT644") - Application.WorksheetFunction.Min(Application.Rows("AT2:AT644")), , 1)) * ("AT2:AT644" = "6"))
谢谢,
问候,
饵
从评论中迁移…
Debug.Print Sheet1.Evaluate("SUMPRODUCT(SUBTOTAL(3,OFFSET((AT2:AT644),ROW(AT2:AT644)-MIN(ROW(AT2:AT644)), ,1)) * (AT2:AT644=""6""))")
或者您需要使用的任何表格,只要不使用Application.Evaluate
除非您希望它始终在ActiveSheet的上下文中进行评估。