正如标题所述,我试图在单独的工作表上计算单元格范围,但似乎无法使其工作。任何帮助将不胜感激。
=COUNTIFS(MONTH(original!A2:A58),"1",original!D2:D58,"=East")
答案 0 :(得分:2)
问题在于公式中的var mainTableDS = new DataSet();
String query = String.Format("exec {0} {1}", StoredProcedure, sampleproc); //possibly vulnerable to SQL Injection attacks!
using (var conn = new SqlConnection(ConfigurationSettings.AppSettings["Constring"]))
using (var mainTableAdapter = new SqlDataAdapter(query, conn))
{
mainTableAdapter.Fill(mainTableDS);
}
return mainTableDS;
部分。我理解你的逻辑,但是你必须在原始工作表上添加一个新列,其中包含月份公式转换,然后更新countif以引用它。
Month()
同样,总之,Month公式无法对CountIf中的整个单元格范围进行转换。唯一的另一种方法是需要一个数组公式。希望这可以帮助。
答案 1 :(得分:1)
您不能在MONTH function中使用COUNTIFS function作为子功能的形式。您需要使用类似SUMPRODUCT function的内容添加额外的计算级别。
=SUMPRODUCT((MONTH(original!A2:A58)=1)*(original!D2:D58="East"))
这应该计算原始工作表的A列中的日期月份为1月且相应行的列D为East的情况。
如果您希望留在COUNTIFS并且可以将日期保留为一年,则可以提供开始日期和结束日期,该日期将包含特定年份的1月份。
=COUNTIFS(Original!A2:A58,">="&DATE(2015,1,1),Original!A2:A58,"<"&DATE(2015,2,1),Original!D2:D58,"East")
COUNTIFS的默认比较运算符是等于。无需输入。