加总G列数字,和放在G列最下面,用VBA怎么写
时间: 2023-05-12 10:05:42 浏览: 235
以下是一个简单的 VBA 代码,可以将 G 列中的数字相加,并将结果放在 G 列的最后一行:
Sub AddGColumn()
Dim lastRow As Long
Dim sum As Double
lastRow = Cells(Rows.Count, "G").End(xlUp).Row ' 获取 G 列最后一行的行号
sum = Application.WorksheetFunction.Sum(Range("G1:G" & lastRow)) ' 计算 G 列中数字的和
Cells(lastRow + 1, "G").Value = sum ' 将和放在 G 列最后一行
End Sub
注意:这段代码假设 G 列中只包含数字,如果有其他类型的数据,可能会导致运行时错误。
相关问题
加总E列数字,和放在最后,VBA怎么写
您可以使用以下代码来实现将加总E列数字并将其放在最后的功能:
Sub SumEandMoveToEnd()
Dim lastRow As Long
Dim sum As Double
Dim i As Long
lastRow = Cells(Rows.Count, "E").End(xlUp).Row '获取E列最后一行的行数
sum = WorksheetFunction.Sum(Range("E1:E" & lastRow)) '计算E列的总和
Range("E" & lastRow + 1).Value = sum '将总和放在E列最后一行的下一行
Range("E1:E" & lastRow).Delete Shift:=xlUp '删除E列中的所有数据,并将其余单元格向上移动
End Sub
这段代码将计算E列中所有数字的总和,并将其放在E列的最后一行的下一行。然后,它将删除E列中的所有数据,并将其余单元格向上移动,以便将总和放在最后一行。
请注意,这段代码是使用VBA编写的,因此您需要在Excel中打开Visual Basic编辑器,并将其复制粘贴到一个新的模块中。
加总E列筛选后的数字,和放在e列最下面,用VBA怎么写
以下是一个可能的 VBA 代码示例,用于将加总 E 列筛选后的数字放在 E 列最下面:
```
Sub MoveFilteredNumbersToBottom()
Dim lastRow As Long
Dim filteredRange As Range
Dim cell As Range
' Find the last row in column E
lastRow = Cells(Rows.Count, "E").End(xlUp).Row
' Filter column E to show only numbers
Range("E1:E" & lastRow).AutoFilter Field:=1, Criteria1:=">0", Operator:=xlAnd
' Get the filtered range
Set filteredRange = Range("E2:E" & lastRow).SpecialCells(xlCellTypeVisible)
' Move each cell in the filtered range to the bottom of column E
For Each cell In filteredRange
cell.Cut Destination:=Range("E" & lastRow + 1)
lastRow = lastRow + 1
Next cell
' Clear the filter
ActiveSheet.AutoFilterMode = False
End Sub
```
请注意,这只是一个示例代码,可能需要根据您的具体需求进行修改。
阅读全文