在本文中,我们将学习如何记录宏,然后如何对其进行修改并使其更易于学习。

如何在VBE中为求和公式编写宏 我们有一个范围为A1:C14的Excel数据,其中A列包含名称,B列包含主题1的标记,C列包含主题2的标记。要返回总分。

要在Microsoft Excel中使用VBA插入和公式,请执行以下步骤:-*打开Excel数据。

  • 首先,您在单元格D2中记录了用于返回总分的宏。

  • 在“开发人员”选项卡中,从“代码”组中选择“记录宏”。

  • 将出现“记录宏”对话框。

  • 在“宏名”(Macro Name)框中输入宏的名称,而不使用任何空格和特殊字符。

  • 键入任意快捷键。

  • 然后在描述框中输入有关宏的描述。

  • 录制将立即开始。

  • 将求和公式写在单元格D2中。

  • 将公式粘贴在D3:D14范围内。

单击“停止录制”。要查看录制的宏,请按“ ALT + F11”键。

  • 记录的代码如下:-

Sub SUM()

'

'SUM Macro

'Total marks obtain

'

' Keyboard Shortcut: Ctrl+Shift+S

'

Range("D2").Select

ActiveCell.FormulaR1C1 = "=SUM(RC[-2]:RC[-1])"

Selection.Copy

Range("C2").Select

Selection.End(xlDown).Select

Range("D14").Select

Range(Selection, Selection.End(xlUp)).Select

ActiveSheet.Paste

Range("D2").Select

End Sub

|如您所见,上述VBA代码太长,无法返回总分数,也不容易理解。因此,我们修改了编码。

Sub SUM()

Dim X As Integer

X = Application.WorksheetFunction.CountA(Range("A:A"))

Range("D2:D" & X).Value = "=Sum(B2:C2)"

End Sub

如何在VBE

中为平均值公式编写宏我们有一个范围为A1:C14的Excel数据,其中A列包含名称,B列包含主题1的标记,C列包含主题2的标记。在D列中,我想返回平均标记。

要在Microsoft Excel 2010和2013中使用VBA插入平均公式,请执行以下步骤:-*打开Excel数据。

  • 首先,您在单元格D2中记录了用于返回平均分数的宏。

  • 在“开发人员”选项卡中,从“代码”组中选择“记录宏”。

  • 将出现“记录宏”对话框。

  • 在“宏名称”框中,输入宏名称,而不使用任何空格和特殊字符。

  • 键入快捷键-任意输入。

  • 然后在描述框中写下有关宏的描述。

  • 录制将立即开始。

  • 在单元格D2中写“ AVERAGE”公式。

  • 将公式粘贴在D3:D14范围内。

  • 单击“停止录制”。

  • 要查看已录制的宏,请按“ ALT + F11”键。

  • 记录的代码如下:-

Sub AVERAGE()

'

'AVERAGE Macro

'Total marks obtain

'

' Keyboard Shortcut: Ctrl+Shift+A

'ActiveCell.FormulaR1C1 = "=AVERAGE(RC[-3]:RC[-2])"

Selection.Copy

Range("E2").Select

Selection.Copy

Range("D2").Select

Selection.End(xlDown).Select

Range("E14").Select

Range(Selection, Selection.End(xlUp)).Select

ActiveSheet.Paste

Range("E13").Select

Selection.End(xlUp).Select

End Sub

|如您所见,上述VBA代码对于返回总分数来说太长了,也不容易理解。因此,我们修改了代码。

Sub Average()

Dim X As Integer

X = Application.WorksheetFunction.CountA(Range("A:A"))

Range("E2:E" & X).Value = "=Average(B2:C2)"

End Sub

通过这种方式,我们可以学习如何记录宏,然后如何对其进行修改。

如果您喜欢我们的博客,请在Facebook上与您的朋友分享。您也可以在Twitter和Facebook上关注我们。

我们很高兴收到您的来信,请让我们知道我们如何改进,补充或创新我们的工作,并为您做得更好。写信给我们[email protected]