乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>EXCEL</em>中,使用VBA编程,希望实现每行都可以自动求和-excel vba求

<em>EXCEL</em>中,使用VBA编程,希望实现每行都可以自动求和-excel vba求

作者:乔山办公网日期:

返回目录:excel表格制作


1、首先,在Excel中新建数据表格。

2、然后,在电脑键盘上按快捷键Alt+F11,从而Excel进入vba界面。

3、接着,在Excel的vba界面依次点击插入——模块,从而进入代码编写的界面。

4、最后,在代码编写的界面输入代码:

sub合计20()

Dim a%

Do Until Sheet2. Cells (a, 2)=""

Sheet2. Cells(2, 3)= Sheet2. Cells (2, 3)+ Sheet2. Cells (a, 2)

a=a+1

End sub

插入控件,将控件制定宏为刚才写的代码即可。



vba里没有sum函数,这个sum函数是excel的工作表函数。在vba里使用工作表函数要使用application的worksheetfunction属性。


具体用法是:Application.WorksheetFunction.Sum

所以二个子程序的do循环里的语句

Cells(g,x)=sum(bx & ":" gx)

要修改成:

Cells(x, "G") = Application.WorksheetFunction.Sum(Range("B" & x & ":F" & x))

说明一下,你把cells属性也使用错了。Cells(RowIndex,ColumnIndex)第一个是行第二个是列。所以x行G列的单元格的表示方法是:Cells(x,"G")


按alt+f11进vba编辑,双击thisworkbook,贴上以下代码
Option Explicit
Sub color()

Dim isnum As Boolean
Dim c, r, i, j As Integer
i = 1
j = 1
' 循环选择的每一行。e79fa5e98193e58685e5aeb9336
For r = 1 To Selection.Rows.Count
' 循环选择的每一列。
For c = 2 To Selection.Columns.Count

If Selection.Cells(r, c).Text = Selection.Cells(r, c - 1).Text Then
i = i + 1
Else
Cells(Selection.Cells(r, c).Row, Selection.Columns.Count + j).Value = i
i = 1
j = j + 1
End If

' Selection.Cells(r, c).Interior.ColorIndex = ci
Next c
Cells(Selection.Cells(r, c).Row, Selection.Columns.Count + j).Value = i
i = 1
j = 1
Next r

End Sub

关闭vba后,选中数值范围,按Alt+f8执行宏

使用sum和sumif函数即可实现,vba也是一系列函数的集合,和使用函数是一样的,vba的意义在于重复,周期性的处理相似的操作,这里不需要。

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网