excelExcel VBA是Excel成为当今最强大的电子表格应用程序之一的原因之一。本教程将向您展示如何使用Excel VBA“For”循环为一个虚构的销售公司计算销售佣金,具体取决于每个销售人员是否达到了他们的销售目标。本教程假设您有一些基本的Excel知识。若要学习如何创建工作表、使用Excel中可用的各种工具栏以及学习Excel的其他基础知识,请注册微软Excel 2013培训教程Udemy。

Excel VBA是Visual Basic的应用程序,你可以通过VBA编辑器访问VBA函数。这个多功能编辑器允许您使用Excel中的可视化基本函数来创建强大的宏。要访问VBA编辑器,首先需要确保将工作表保存为启用宏的工作簿。

下面是我们将在本分步教程中使用的示例数据。要遵循本教程,请创建自己的工作簿,然后将工作簿保存为启用宏的工作簿。

我们将创建一个宏,使用VBA“for”循环计算每个销售人员应得的佣金,以及一个“IF”函数,以确保销售人员只有在达到目标销售额时才收到佣金。

如何访问VBA编辑器

您可以使用菜单中的Developer功能直接访问VBA编辑器,然后您需要单击Visual Basic。

visual basic编辑器将在一个新窗口中打开,这样您就可以为工作表编写VBA应用程序。

VBAFor3

还可以通过选择要插入到工作表中的ActiveX控件来访问Visual Basic Editor。对于本教程,我们将添加一个按钮,允许我们计算应付的佣金。

要将按钮添加到工作表中,请选择Developer选项卡,然后选择Insert。插入ActiveX命令按钮,然后将该按钮绘制到工作表上。

VBAFor4

双击按钮访问该按钮的VBA代码,VBA编辑器将打开:

VBAFor5

首先,我们将按钮重命名为“Calculate commission”。要访问VBA或ActiveX控件的属性,在VBA编辑器中选择标题并添加“计算佣金”

VBAFor6

现在我们需要将“For”循环添加到应用程序中。要添加一个“For”循环,您需要知道For循环是如何工作的。for循环的语法如下:

For counter = start_counter To end_counter

的做某事

下一个柜台

“For”循环使用一个计数器来跟踪它执行某个函数的次数。循环开始并测试一个条件。如果条件为假,循环执行循环中指定的函数。然后计数器增加1。程序再次测试条件,如果条件为假,则重复这些步骤。如果条件为真,则程序退出for循环并移动到下一个指令集。

以下是“For”循环如何工作的可视化表示:

VBAFor7

对于我们的电子表格,我们需要VBA检查每个销售人员的销售和每个销售人员,VBA必须计算佣金。“For”循环使用一个计数器,所以我们需要首先声明该计数器作为一个变量在我们的VBA代码。

要学习如何在Excel中创建自己的VBA应用程序,以及如何为应用程序声明变量,请注册Excel VBA和MrExcel宏Udemy。

为了在应用程序中声明该变量,我们将使用" j "作为计数器。我们需要计数器计数,因此声明“j”为整数。

你需要在编辑器中输入以下内容:

Dim j为整数

现在我们需要将“For”循环添加到程序中。使用上面给出的“For”循环语法,在编辑器中输入以下内容:

对于j = 3到12

计数器从3数到12,因为我们的销售总额从第3行开始,有10个销售人员参与到销售中,所以这个“For”循环将执行我们给所有销售人员的指令。

接下来,我们必须告诉Excel需要为每个销售人员重复哪些步骤。我们想计算每个销售人员应得的佣金。为了计算佣金,我们需要从我们的工作表中得到他们的销售额。然后我们需要用这个值来计算应得的佣金。最后,我们需要把这个值放在每个销售人员的佣金栏里。

看看我们将要使用的公式:

salesTotal = Cells(j, 3).Value

commi = salesTotal * 10 / 100

Cells(j, 5) = commi

最后,我们需要Excel为每个销售人员重复这一步骤,因此我们需要在每次执行该步骤时增加计数器。我们输入:

下一个我

上面的输出是这样的:

VBAFor8

确保你从开发选项卡中取消选择“设计模式”来使用你创建的按钮。

编辑器中的VBA应用程序是这样的:

VBAFor9

然而,我们必须添加一个报表,只计算达到销售目标的销售人员的佣金。关于如何在VBA中使用“IF ELSE”语句的教程,您可以阅读VBA IF ELSE语句的强大的微软应用程序来自Udemy博客bob体育主页。高级Excel课程将教你如何在电子表格中利用宏的强大功能,请注册VBA -介绍VBA宏从Udemy课程。

因此,我们需要在VBA编辑器中添加以下代码:

如果salesTotal > targetTotal则

其他的

Cells(j, 5) = 0

如果

完成的VBA编辑器代码如下所示:

VBAFor10

最终的工作表是这样的:

从上面的结果中可以看到,VBA宏使用“For”循环遍历每个销售人员,然后检查销售人员的销售额是否大于销售目标。如果销售额大于目标,那么VBA宏观计算应支付的佣金。如果销售不低于目标,那么VBA宏将给到期佣金赋值为零。

若要学习在工作中应用这些功能强大的宏和函数,请注册高级专业Excel今天的课程,学习宝贵的时间节省技巧,以及如何使用Excel的各种其他功能,如MS报表,数据清理和数据分析技术。

Excel VBA顶级课程

解锁Excel VBA和Excel宏
莱拉Gharani
4.7 (26917)
畅销书
熟练掌握微软Excel宏和Excel VBA
凯尔尤
4.5 (11735)
畅销书
Excel宏和VBA初学者
Bluelime学习方案
4.3 (19)
热&新
使用Access数据库的终极Excel VBA用户表单
m·穆斯塔法BOLAT
4.5 (126)
完整的Web自动化与Excel VBA
丹尼尔强
4.8 (741)
畅销书
Excel VBA宏:超消除歧义的Excel VBA编程
格兰特赌博
4.4 (989)
畅销书
Excel VBA报表自动化要点
本杰明Termonia
4.6 (186)
最终Excel VBA
马克Talbert
4.7 (3210)
Excel VBA编程-完整指南
鲍里斯Paskhaver
4.7 (3742)
Microsoft Excel VBA简介
凯尔尤
4.5 (1161)
Excel宏和Excel VBA编程初学者
Andreas Exadaktylos
4.5 (860)
评价最高

更多Excel VBA课程

Excel VBA的学生也可以学习

让你的团队。领导行业。

使用Udemy for Business订阅在线课程库和数字学习工具。

请求一个演示