excel中如何使录入的数据自动累加在上一次的结果上面
如题举例:A2单元格原始值是1000,在A1单元格中输入200,A2单元格中的值就是A2的原始值1000+A1中输入的200,就是1200.下一次在A1单元格重新输入15...
如题
举例: A2单元格原始值是1000,在A1单元格中输入200,A2单元格中的值就是A2的原始值1000+A1中输入的200,就是1200.下一次在A1单元格重新输入150,那A2的数据就是1200+A1中输入的150,就是1350.下次重新输入时就得到新的结果!一直这样自动更新!棘手!高分求助。。
注: 可以用单元格公式,也可以用宏 展开
举例: A2单元格原始值是1000,在A1单元格中输入200,A2单元格中的值就是A2的原始值1000+A1中输入的200,就是1200.下一次在A1单元格重新输入150,那A2的数据就是1200+A1中输入的150,就是1350.下次重新输入时就得到新的结果!一直这样自动更新!棘手!高分求助。。
注: 可以用单元格公式,也可以用宏 展开
4个回答
展开全部
创建一个宏:
选择Excel选单下的“工具→宏→录制新宏”选项;
宏名为:MyMicro;
快捷键为: Ctrl+Shift+J(只要不和 Excel本身的快捷键重名就行);
保存在: 个人宏工作簿(可以在所有 Excel 工作簿中使用)。
2.用鼠标选择“停止录入”工具栏中的方块,停止录入宏。
3.选择Excel选单下的“工具→宏→Visual Basic 编辑器”选项。
4.在“Visual Basic 编辑器”左上角的VBAProject中用鼠标双击VBAProject (Personal.xls) 打开“模块→Module1”。
注意:你的模块可能不是Module1 ,也许是Module2、Module3。
5.在右侧的代码窗口中将Personal.xls-Module1(Code)中的代码更改为:
Sub MyMicro( )
OldValue = Val (ActiveCell.Value )
InputValue = InputBox ( “输入数值,负数前输入减号”,“小小计算器”)
ActiveCell.Value = Val (OldValue + InputValue)
End Sub
6.关闭Visual Basic编辑器。
编辑完毕,你可以试试刚刚编辑的宏,按下Shift+Ctrl+J键,输入数值并按下“确定”键。
这段代码只提供了加减运算,我是从网上淘来的。
选择Excel选单下的“工具→宏→录制新宏”选项;
宏名为:MyMicro;
快捷键为: Ctrl+Shift+J(只要不和 Excel本身的快捷键重名就行);
保存在: 个人宏工作簿(可以在所有 Excel 工作簿中使用)。
2.用鼠标选择“停止录入”工具栏中的方块,停止录入宏。
3.选择Excel选单下的“工具→宏→Visual Basic 编辑器”选项。
4.在“Visual Basic 编辑器”左上角的VBAProject中用鼠标双击VBAProject (Personal.xls) 打开“模块→Module1”。
注意:你的模块可能不是Module1 ,也许是Module2、Module3。
5.在右侧的代码窗口中将Personal.xls-Module1(Code)中的代码更改为:
Sub MyMicro( )
OldValue = Val (ActiveCell.Value )
InputValue = InputBox ( “输入数值,负数前输入减号”,“小小计算器”)
ActiveCell.Value = Val (OldValue + InputValue)
End Sub
6.关闭Visual Basic编辑器。
编辑完毕,你可以试试刚刚编辑的宏,按下Shift+Ctrl+J键,输入数值并按下“确定”键。
这段代码只提供了加减运算,我是从网上淘来的。
展开全部
步骤如下:
1、按ALT+F11
2、按F7,粘贴如下代码,并调整为如下格式
3、按F5运行。
4、代码:
Private Sub Worksheet_Change(ByVal Target As Range)
a = Cells(2, 1).Value
If Target = Cells(1, 1) Then
Cells(2, 1) = a + Target.Value
End If
End Sub
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
从技术上可行,但本人不主张这样做,因为这个过程不可逆转,一旦输错一次,其结果就是个错误结果,你不敢保证你绝对不会输错,若你非要这样,就工具→选项→重新计算→勾选迭代计算→最多迭代次数改为1→确定→在b1输入公式:=if(cell("address")="$a$1“,a2+a1,a2),回车
追问
在2007中哪里选择呢?
追答
抱歉07不了解,你网上找下吧,迭代计算功能应该有的,应该在a2输入公式:=if(cell("address")="$a$1“,a2+a1,a2)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ALT+F11——F7——粘贴如下代码,并调整为如下格式——F5运行。
Private Sub Worksheet_Change(ByVal Target As Range)
a = Cells(2, 1).Value
If Target = Cells(1, 1) Then
Cells(2, 1) = a + Target.Value
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
a = Cells(2, 1).Value
If Target = Cells(1, 1) Then
Cells(2, 1) = a + Target.Value
End If
End Sub
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |