我希望使用countifs()来帮助缩小我的计数参数,尽管我无法根据代码中的上述内容设置参数。
我有一年的用户输入和一个月的用户输入;我想在我的countifs声明中使用这个输入,虽然我没有这样的运气。
为了进行健全性检查,我输入了具体的月份和年份值,并且能够得到正确答案。
以下是代码:
Sub Investigations()
'Return to Overview sheet before running as non-subsequent columns may receive output if viewing another sheet
Sheets("Overview").Select
'Define year and month
Dim zYear As Integer
zYear = InputBox("Year (yyyy)")
Dim zMonth As Integer
zMonth = InputBox("Month (mm)")
'Define zYear and zMonth on the spreadsheet so it can be referenced
Sheets("Investigations").Range("L1").Value = zYear
Sheets("Investigations").Range("M1").Value = zMonth
'Count of total minor investigations
Dim LastCol1 As Long
LastCol1 = Range("A12").End(xlToRight).Column
Sheets("Overview").Cells(12, LastCol1 + 1).Formula = "=countif(Investigations!H:H,""Low"")"
'Define and count minor investigations closed on time (<31 days), in the pre-defined year and month
Dim LastRow As Integer
LastRow = Range("A2").End(xlDown).Row
Sheets("Investigations").Range("I1").Formula = "Time to Close (Days)"
Sheets("Investigations").Range("I2:I" & LastRow).Formula = "=if(F2>0,abs(F2-E2),""N/A"")"
Sheets("Investigations").Range("J1").Formula = "Month of Closure"
Sheets("Investigations").Range("J2:J" & LastRow).Formula = "=if(F2>0,month(F2),""N/A"")"
Sheets("Investigations").Range("K1").Formula = "Closed in Defined Month"
Sheets("Investigations").Range("K2:K" & LastRow).Formula = "=IF(J2=$M$1,TRUE,FALSE)"
'Count of closed minor investigation in pre-defined year and month
Sheets("Overview").Cells(13, LastCol1 + 1).Formula = "=COUNTIFS(Investigations!H:H,""Low"",Investigations!I:I,""<31"",Investigations!K:K,""True"")"
End Sub
任何帮助将不胜感激。提前谢谢!
EDIT1:
此处没有错误消息。运行代码时,计数返回零。完整性检查返回38项(从&gt; 8k行中删除)。我的问题是我不知道如何在我的countif中适当地引用zMonth和zRange,因为它们实际上并不存在于任何工作表上,只是在代码中。
EDIT2:
更新了我的调查表中定义zMonth和zYear的代码。现在我有一个比较列,所以我可以避免尝试在countif中调用代码。仍然有问题让这个工作;我的理智检查(在调查选项卡上完成)状态= COUNTIFS(H:H,&#34;低&#34;,I:I,&#34;&lt; 31&#34;,K:K,&#34; True& #34;)得到38的结果,同时使用表格(&#34;概述&#34;)。单元格(13,LastCol1 + 1).Formula =&#34; = countifs(调查!H:H,& #34;&#34;低&#34;&#34;,调查I:!I,&#34;&#34;&LT; 31&#34;&#34;,调查K:K,&#34! ;&#34;真&#34;&#34;)&#34;给出值0。
EDIT3:
结果我在最后的计数字符串中有一个空格。立即行动。
答案 0 :(得分:0)
我无法找到原始问题的答案,并通过将zMonth和zYear放在要由单元格引用的工作表上找到了解决办法。