如何在Excel中使用公式进行FOR循环(3个例子)

  • Share This
Hugh West

你不想使用Excel VBA,并想让一个 FOR 循环 在这篇文章中,我展示了如何在Excel中使用公式来使 FOR 循环 使用公式。

如果你知道如何用Excel编码 VBA ,你就有福了 🙂。 但是,如果你从来没有写过代码,在 VBA 或者想让你的Excel工作簿不受Excel的影响 VBA 代码,那么大多数情况下,你必须跳出框框来创建一个简单的 循环 .

下载工作文件

从以下链接下载工作文件。

使用公式进行循环.xlsx

在Excel中使用公式进行FOR循环的3个例子

在此,我将展示 3 制作的例子 FOR 循环 让我们看看详细的例子。

1.应用组合函数在Excel中做FOR循环

现在,让我知道鼓励我写这个例子的背景。

我是Udemy上一些课程的作者。 其中一门课程是关于Excel条件格式化的。 课程的标题是。 用7个实际问题学习Excel条件格式化。 [ 要免费获得该课程,请点击这里 ].

在课程讨论区,一个学生问了我一个问题,如下[截图图片]。

一位学生在Udemy提出的问题。

仔细阅读上述问题并尝试解决它...

解决上述问题的步骤。

在这里,我将使用 , 关节 , 规模 , ,以及 ROW 职能部门作为Excel公式来创建一个 FOR 循环 .

  • 首先,你的工作是打开一个新的工作簿,将上述数值逐一输入工作表[从单元格开始]。 C5 ].
  • 其次,选择整个范围[从单元格 C5:C34 ].
  • 第三,从 首页 丝带>> 点击 条件性格式化 指挥。
  • 最后,选择 新规则 选项,从下拉菜单中选择。

在这个时候。 新的格式化规则 对话框出现。

  • 现在,在 选择一个规则类型 窗口>> 选择 使用一个公式来决定哪些单元格需要格式化 选择。
  • 然后,在 格式化该公式为真的值 领域,输入这个公式。
=or(offset(c5,max(row(c$5)-row(c5)+3,0),0,min(row(c5)-row(c$5)+1,4),1)-offset(c5,max(row($c$5)-row(c5),-3),0,min(row(c5)+1,4),1) = 3)

  • 现在,通过点击选择适当的格式类型。 格式... 按钮在对话框中。

这时,一个名为 格式化单元格 将会出现。

  • 现在,从 填充 选项>> 你必须选择任何一种颜色。 在这里,我选择了 浅蓝色 背景。 另外,你可以看到 样本 即时。 在这种情况下,尽量选择任何 因为深色可能会隐藏输入的数据。 然后,你可能需要改变 字体颜色 .
  • 然后,你必须按 认可 以适用于该阵型。

  • 之后,你必须按 认可 关于 新的格式化规则 在这里,你可以看到样品立即在 预览 箱子。

最后,你将得到格式化的数字。

让我告诉你解决上述问题的算法。

  • 在这里,为了让你容易理解算法,我将用两个参考单元格来解释整个事情:单元格 C11 C17 在细胞中 C11 C17 ,其数值为 10 20 如果你习惯于使用Excel的公式,那么你可以闻到 关节 功能,如 关节 函数对参考点起作用。
  • 现在,想象一下,我正在获取单元格范围的值 C8:C11 &。 C11:C14 ,以及 C14:C17 &。 C17: C20 参考单元格是 C11 C17 而我总共采取了 7 你会得到一个像下面这样的假想图。 从第一部分,你可以从图像中找到一个模式。 C9-C12=3 , C10-C13=3 但对于第二部分,没有这样的模式。

  • 因此,让我们在记住上述模式的基础上建立算法。 在建立通用公式之前,我将展示单元格的公式是什么 C11 C17 然后将修改公式,使之成为所有的通用公式。 对于一个参考点(如 C11 C17 ),我将总共采取 7 然后我将找出这些数组的差值,如果其中任何一个差值等于 3 的参考单元格将是 为真 价值不菲。
  • 在这里,我可以轻松地使用 关节 的功能为 关节 函数返回一个数组。 对单元格的引用说 C11 ,我可以这样写公式。 =or(offset(c11, 0, 0, 4, 1)-offset(c11, -3, 0, 4, 1) =3) 这个公式将返回什么? 公式的第一个偏移函数将返回数组。 {10; 11; 12; 15} ,第二个偏移函数将返回数组 {5; 8; 9; 10} 你也知道 {10; 11; 12; 15} - {5; 8; 9; 10} = {10-5; 11-8; 12-9; 15-10} = {5; 3; 3; 5} 当这个阵列在逻辑上被测试为 =3 那么Excel内部是这样计算的。 {5=3;3=3;3=3;5=3}={假;真;真;假}。 .当 函数被应用于这个数组。 OR({False; True; False; True}。 ,你会得到 为真 细胞 C11 获得真值作为返回值。
  • 所以,我想你已经得到了这个算法如何工作的整个概念。 现在有一个问题,这个公式可以从单元格 C8 ,上面的单元格 C8 导致的,有 3 但对于细胞 C5、C6。 C7 所以应该对这些单元格的公式进行修改。
  • 现在,对于细胞 C5 C7 我们希望该公式不会考虑到上位数。 3 例如,对于细胞 C6 ,我们的公式将不会像单元格的公式那样 C11 : =or(offset(c11, 0, 0, 4, 1)-offset(c11, -3, 0, 4, 1) =3) .
  • 在这里,对于细胞 C5 ,该公式将是这样的。 or(offset(c5, 3, 0, 1, 1)-offset(c5, 0, 0, 1, 1) =3) .
  • 然后,对于细胞 C6 ,该公式将是这样的。 or(offset(c6, 2, 0, 2, 1)-offset(c6, -1, 0, 2, 1) =3) .
  • 此后,对于细胞 C7 ,该公式将是这样的。 or(offset(c7, 1, 0, 3, 1)-offset(c7, -2, 0, 3, 1) =3) .
  • 同样,对于细胞 C8 ,该公式将是这样的。 or(offset(c8, 0, 0, 4, 1)-offset(c8,-3, 0, 4, 1) =3) ;[这是一般公式]。
  • 然后,对于细胞 C9 ,该公式将是这样的。 or(offset(c9, 0, 0, 4, 1)-offset(c9,-3, 0, 4, 1)=3) ;[这是一般公式]。
  • 最后,你是否从上述公式中发现了一些规律? 第一个是 关节 函数的行参数已经从 3 0 ;高度参数从 1 4 第二次 关节 函数的行参数已经从 0 -3 和高度的争论已经从 1 4 .
  • 首先,第一 关节 函数的行参数将被修改成这样。 max(row(c$5)-row(c5)+3,0)
  • 其次,第二 关节 函数的行参数将被修改成这样。 max(row(c$5)-row(c5),-3)
  • 第三,第一 关节 函数的高度参数将被修改成这样。 min(row(c5)-row(c$5)+1,4)
  • 第四,第二 关节 函数的高度参数将被修改成这样。 min(row(c5)-row(c$5)+1,4)
  • 现在,试着理解上述修改。 这些并不难理解。 所有这些 修改的工作是 对于循环 但我已经用Excel VBA建立了它们的公式。
  • 所以,你已经知道了一般的公式是如何在单元格中工作的了。 C5:C34 .

因此,我正在谈论Excel电子表格中的循环。 因此,这是Excel中循环的一个完美的例子。 在这里,每当公式以 7 单元,并在这些单元上工作以找出一个特定的值。

2.使用IF& OR函数在Excel中创建FOR循环

在这个例子中,假设你想检查单元格是否包含任何值。 此外,通过Excel VBA 为循环。 你可以很容易地做到这一点,但在这里,我将使用一个Excel公式来做。

现在,你可以使用 基金会 ,以及 作为Excel公式的函数来创建 FOR 循环 此外,你可以根据自己的喜好修改这个公式。 步骤如下。

步骤。

  • 首先,你必须选择一个不同的单元格 E5 在你想看到的地方 状况 .
  • 其次,你应该使用相应的公式在 E5 细胞。
=IF(OR(B5="",C5="",D5=""),"Info Missing","Done")

  • 随后,按 进入 来获得结果。

公式分解

在这里, 函数将返回 为真 如果任何一个给定的逻辑成为 为真 .

  • 首先。 B5="" 是指 第一届 逻辑,它将检查单元格是否 B5 是否包含任何值。
  • 其次。 C5="" 是指 第2次 逻辑,它将检查单元格是否 C5 是否包含任何值。
  • 第三。 D5="" 是指 第三届 逻辑。 同样,这将检查单元格中是否有 D5 是否包含任何值。

现在 基金会 函数返回将满足给定条件的结果。

  • 函数给出了 为真 那么你将得到" 缺少的信息 "作为 状况 否则,你会得到""。 已完成 "作为 状况 .
  • 之后,你必须拖动 填充手柄 图标到 自动填表 其他单元格中的相应数据 E6:E13 . 或者你可以双击 填充手柄 图示。

最后,你将得到所有的结果。

3.运用SUMIFS函数在Excel中创建FOR循环

假设,你想为某个人制作总账单。 在这种情况下,你可以使用 FOR 循环 在这里,我将使用 SUMIFS函数 来创建 FOR 循环 具体步骤如下。

步骤。

  • 首先,你必须选择一个不同的单元格 F7 在你想看到的地方 状况 .
  • 其次,你应该使用相应的公式在 F7 细胞。
=sumifs($c$5:$c$13,$b$5:$b$13,e7)

  • 随后,按 进入 来获得结果。

公式分解

  • 在这里。 C$5:$13 是数据范围,从 SUMIFS 函数将进行求和。
  • 然后。 5美元:13美元 是数据范围,从那里 SUMIFS 函数将检查给定的标准
  • 最后。 E7 是标准。
  • 因此,在 SUMIFS 函数将添加支付给 E7 单元格值。
  • 之后,你必须拖动 填充手柄 图标来自动填充其余单元格中的相应数据。 F8:F10 .

最后,你会得到结果。

总结

我们希望你认为这篇文章对你有帮助。 在这里,我们解释了 3 适当的例子,使 FOR 循环 你可以访问我们的网站 优秀 如果您有任何意见、建议或疑问,请在下面的评论区提出。

Hugh West is a highly experienced Excel trainer and analyst with over 10 years of experience in the industry. He holds a Bachelor's degree in Accounting and Finance and a Master's degree in Business Administration. Hugh has a passion for teaching and has developed a unique teaching approach that is easy to follow and understand. His expert knowledge of Excel has helped thousands of students and professionals worldwide improve their skills and excel in their careers. Through his blog, Hugh shares his knowledge with the world, offering free Excel tutorials and online training to help individuals and businesses reach their full potential.