Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 1848|回复: 6

[已解决]自定义函数使用出现状况

[复制链接]
发表于 2015-5-25 10:22 | 显示全部楼层 |阅读模式
自己尝试做了个简单的自定义函数,出现了点状况。请论坛各位高手帮忙看下,谢谢。

这个自定义函数是要实现求得前面第2,4,6,8个单元格的平均值。 直接用,和复制粘贴的情况下都OK. 单元格往下拖拽复制公式就出现状况。

请问是什么原因呢?
最佳答案
2015-5-25 11:12
Function newavg()
Dim rng As Range
Set rng = Union(Application.ThisCell.Offset(0, -2), Application.ThisCell.Offset(0, -4), Application.ThisCell.Offset(0, -6), Application.ThisCell.Offset(0, -8))
newavg = Application.WorksheetFunction.Average(rng)
End Function
newavg.PNG

newavg test v.052515.zip

13.45 KB, 下载次数: 12

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2015-5-25 11:12 | 显示全部楼层    本楼为最佳答案   
Function newavg()
Dim rng As Range
Set rng = Union(Application.ThisCell.Offset(0, -2), Application.ThisCell.Offset(0, -4), Application.ThisCell.Offset(0, -6), Application.ThisCell.Offset(0, -8))
newavg = Application.WorksheetFunction.Average(rng)
End Function
回复

使用道具 举报

 楼主| 发表于 2015-5-25 21:24 | 显示全部楼层
extyg 发表于 2015-5-25 11:12
Function newavg()
Dim rng As Range
Set rng = Union(Application.ThisCell.Offset(0, -2), Applicati ...

运行出现错误,请见图。
捕获.PNG
回复

使用道具 举报

 楼主| 发表于 2015-5-26 09:49 | 显示全部楼层
不懂为什么出现错误信息,我又试了下,可以正确使用了,谢谢extyg。
回复

使用道具 举报

发表于 2015-5-26 09:56 | 显示全部楼层
QQ截图20150526094913.jpg


直接用工作表函数不是方便些?
回复

使用道具 举报

发表于 2015-5-26 10:07 | 显示全部楼层
Excel 开发人员参考
Application.ThisCell 属性
返回一个单元格,用户定义的函数将作为 Range 对象从这里调用。
语法

表达式.ThisCell

表达式   一个代表 Application 对象的变量。

说明


在用户定义的函数中,用户不能访问 Range 对象上的属性或方法。当完成了重新计算后,用户可以为今后的使用和执行附加操作而存储 Range 对象。


示例


在本示例中,名为“UseThisCell”的函数包括 ThisCell 属性,以便将单元格地址通知给用户。

Visual Basic for Applications
Function UseThisCell()
    MsgBox "The cell address is: " & _
        Application.ThisCell.Address
End Function



~~~~~~~~~~~~~~~~~~~~~~~~ 我是分割线 ~~~~~~~~~~~~~~~~~~~~~~~~


谢谢钉耙版主,学习了

如果自定义函数不下拉,两者没区别。
如果自定义函数要下拉:
ActiveCell,仍是拉动前的唯一的那个单元格;
Application.ThisCell,是自定义函数所在的单元格。






回复

使用道具 举报

 楼主| 发表于 2015-5-26 15:32 | 显示全部楼层
学习了,谢谢。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-24 14:20 , Processed in 0.289729 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表