excel如何用自定义函数给单元格赋值

如题所述

自定义函数中不能对其他单元格赋值
你的要求可以用工作表的Change事件过程来实现
也就是说
当指定单元格发生变化时
自动运行一段程序
程序中可以对需要的单元格进行赋值

示例:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then Range("A5") = "TEST"
End Sub

只要A1单元格内容变化,就将A5单元格中的内容修改为“TEST”
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-02-05
你要赋什么值?
不同的值用不同的公式.
如=today(),就是今天的日期,
=now(),就是现在的时间.

=RAND()将赋一个0-1之间的小数值
=RANDBETWEEN(2,100)将赋一个2-100之间的任意数(2-100的范围可以自定义,3-6,8-25等等多少至多少都可以)
每次打开文件\或每刷新一次\或在空白格里按一次delete键,都会刷新一次.追问

我的意思是我现在编一个函数,例如我想在函数里面给A5单元格赋值,然后我在A1单元格引用这个函数并运行这个函数,A5单元格自动就会出现我在函数里面所赋的值

追答

你提的要求似乎还是不够清楚.
你是想自定义一个函数,在A1格里用到这个函数,且函数里用到A5的值,而A5会自动出现在A1格里运算时,A5所代表的值,是这个样子吗?

在做一条这个函数出来很简单,但不一定就有你要的实用价值.(你说出你具体想解决什么问题,才有具体的对应方法)

如果这是一道题目,你可以做一题简单的回答:
假设有100人排队选限价房,A5为张三电脑派号的号数,A1的计算结果是多少人排在张三的后面.
A1,=100-A5
A5,=RANDBETWEEN(1,100)

第2个回答  2013-02-05
能说详细一点吗?你是要达到一个什么效果,能举个例吗?追问

我现在想编一个自定义函数,我想在函数里面给excel表中指定的单元格赋值,怎么做?

追答

自定义函数需要懂一点VBA,具体操作见以下链接,写得非常详细。
http://jingyan.baidu.com/article/03b2f78cabf9805ea337ae43.html

追问

我的意思是我现在编一个函数,例如我想在函数里面给A5单元格赋值,然后我在A1单元格引用这个函数并运行这个函数,A5单元格自动就会出现我在函数里面所赋的值。您发的网页我看了,没有我想要的

追答

如果A5中不填写任何函数,只能用VBA带出结果,如果A1和A5中都可以填写函数,只要有条件(即参与函数运算的值),就可以实现。
A1 A5
函数? 自动带出结果?

相似回答