将for循环转换为Excel
我正在尝试将for循环等效为一个Excel可用条目。 我有一点编写代码的经验,但除了基本功能外,我没有使用Excel的经验 场景:查找购买N件物品的总成本。将for循环转换为Excel,excel,algorithm,Excel,Algorithm,我正在尝试将for循环等效为一个Excel可用条目。 我有一点编写代码的经验,但除了基本功能外,我没有使用Excel的经验 场景:查找购买N件物品的总成本。 每件商品的固定价格都高于上一件商品(目前为15%)。 我可以得到N项的费用。 我希望单元格显示所有项目(包括N)的总成本 N=列表中的项目总数,该值根据电子表格中其他地方的计算而变化 比率=15%或0.15,但可以更改,所以我不希望硬编码 这个公式给出了N项的成本_____ ((1/(1+比率))*((1+比率)^(N))) 我想下面这样的
每件商品的固定价格都高于上一件商品(目前为15%)。 我可以得到N项的费用。 我希望单元格显示所有项目(包括N)的总成本 N=列表中的项目总数,该值根据电子表格中其他地方的计算而变化 比率=15%或0.15,但可以更改,所以我不希望硬编码 这个公式给出了N项的成本_____ ((1/(1+比率))*((1+比率)^(N))) 我想下面这样的东西会有用,但我不知道如何编写这是Excel可以使用的一种方式
Total = 0;
for(i=1,i=N,i++){
Total = Total+((1/(1+Rate))*(((1+rate)^(i)));
};
此图表显示了我所需的手动计算
项目→ N个项目的总成本
这是我想到的,尽管它有点类似于德克·雷切尔的伟大答案
=SUMPRODUCT((1/(1+$B$2))*((1+$B$2)^ROW($A$1:A1)))
基本上,我使用SUMPRODUCT
将总数汇总到相应的行中
这是我想到的,尽管它有点类似于德克·雷切尔的伟大答案
=SUMPRODUCT((1/(1+$B$2))*((1+$B$2)^ROW($A$1:A1)))
基本上,我使用SUMPRODUCT
将总数汇总到相应的行中
你不需要一个循环。几何序列的和有一个封闭的形式。你的每个术语都是
(1+速率)^(N-1)
,所以前N个的和是((1+速率)^N)-1)/Rate
谢谢Jerry,这个答案正是我想弄明白的,但我只是不知道搜索它的术语“几何序列”。就像一个符咒,很容易使用。你不需要一个循环。几何序列和有一个闭合形式。你的每一个术语都是(1+速率)^(N-1)
,所以前N个术语的总和是((1+速率)^N)-1)/Rate
,谢谢Jerry,这个答案正是我想弄明白的,但我只是不知道搜索它的术语“几何序列”。工作起来很有魅力,也很容易使用。谢谢德克的回答。我不理解“A1:Index”部分,所以我必须查找它,以便稍后使用。@GaryHullahIndex
返回一个范围(不是值)。因此,对于索引(A:A,A2)
它将是列A
,并且是A2中指定的行(在这种情况下,它是14,所以它将是A14)SingleCell:SingleCell
是一个范围,这样它就变成了从A1到A14的范围。在行中
变成了一个简单的数组{1,2,3,4,5,6,7,8,9,10,11,12,13,14}
,用作递增的i
。谢谢你的回答。我不理解“A1:Index”部分,所以我必须查找它,以便稍后使用。@GaryHullahIndex
返回一个范围(不是值)。因此,对于索引(A:A,A2)
它将是列A
,并且是A2中指定的行(在这种情况下,它是14,所以它将是A14)SingleCell:SingleCell
是一个范围,这样它就变成了从A1到A14的范围。在行中
成为一个简单数组{1,2,3,4,5,6,7,8,9,10,11,12,13,14}
,用作递增的i
。