Vba 如果对应单元格具有给定值,则为非固定单元格数之和

Vba 如果对应单元格具有给定值,则为非固定单元格数之和,vba,excel,Vba,Excel,我正在绞尽脑汁想如何实现这一点。我有一个工作表,其中的数据将被读取。数据的大小将不时变化。在数据读入后,我已经对生成的求和列进行了编程。我希望每个单元格对行中的所有值求和,第一行的索引值等于求和列中第一行的值。这张图片可能会给你一个不那么抽象的案例形象。我将第3行的手动公式作为文本包含在第12行中。我想在VBA中执行此操作。最多可能有50套[20102011,avvik]或[2010,avvik]或[2011,avvik]。对于数据区域的开始和结束,有两个变量具有保存的数字列编号 换言之;SUM

我正在绞尽脑汁想如何实现这一点。我有一个工作表,其中的数据将被读取。数据的大小将不时变化。在数据读入后,我已经对生成的求和列进行了编程。我希望每个单元格对行中的所有值求和,第一行的索引值等于求和列中第一行的值。这张图片可能会给你一个不那么抽象的案例形象。我将第3行的手动公式作为文本包含在第12行中。我想在VBA中执行此操作。最多可能有50套[20102011,avvik]或[2010,avvik]或[2011,avvik]。对于数据区域的开始和结束,有两个变量具有保存的数字列编号

换言之;SUM 2010下的money列在我的程序中实际上只是2010,它应该对给定行中的每个单元格求和,该行在同一列的第1行中具有值2010。2011年也是如此


您可能需要保存/打开图片以获取详细信息

您可以使用公式SUMIF来完成此操作。对于第三季度,您可以写:

=SUMIF(A1:P1, "2010", A3:P:3)
用外行的话说,你是说,看看A1-P1范围内的所有单元格,如果值恰好是2010,我希望你把A3-P3范围内的值加到总和上


顺便说一句,您也可以在单元格Q11中使用此公式来获取总数,而不是当前的公式。年份日期和数字在同一列中这一事实使得这非常容易。

您可以使用SUMIF公式来实现这一点。对于第三季度,您可以写:

=SUMIF(A1:P1, "2010", A3:P:3)
用外行的话说,你是说,看看A1-P1范围内的所有单元格,如果值恰好是2010,我希望你把A3-P3范围内的值加到总和上


顺便说一句,您也可以在单元格Q11中使用此公式来获取总数,而不是当前的公式。年份日期和数字都在同一列中,这一点非常简单。

手动操作,效果很好。所以我想我会让它在VBA中工作。此外,我还需要一些组合标准,我与SumProduct合作时得到了这些标准,祝你好运。一般来说,forumulas的运行速度比VBA快,在这种情况下,公式相当简单,所以我的建议是,如果它有效,就坚持使用它。手动操作,这是有效的。所以我想我会让它在VBA中工作。此外,我还需要一些组合标准,我与SumProduct合作时得到了这些标准,祝你好运。一般来说,forumulas的运行速度比VBA快,在这种情况下,公式相当简单,因此我的建议是,如果它有效,就坚持使用它。