您的位置:程序门 -> vb -> vba



這個excel自定義函數為什么會錯呢?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


這個excel自定義函數為什么會錯呢?[已结贴,结贴人:xiaofengfeng9]
发表于:2007-04-10 14:07:28 楼主
在excel的vb編輯器中自定义函数如下:  
public   function   gx(a,   i)  
sheets(a).select  
range( "a1 ").select  
gx=i  
end   function  

回到excel工作表单状态下,在任一单元格中输入 "=gx(sheet3,9) ",结果为“#name?”。预期是函數打开sheet3表单并在a1单元格中填入9。
发表于:2007-04-10 14:24:121楼 得分:10
public   function   gx(a   as   string,   i   as   long)   as   long
        sheets(a).select
        range( "a3 ").select
        gx   =   i
end   function

=gx( "sheet3 ",9)


发表于:2007-04-10 14:48:022楼 得分:0
ggl123還是一樣的結果,是我沒理解你的意思嗎?
发表于:2007-04-10 15:36:103楼 得分:0
这个是不是有问题呀
  range( "a3 ").select
发表于:2007-04-10 16:42:154楼 得分:90
excel自定义函数不支持对象属性(如   其他单元格赋值,字体颜色,大小等)的设置。可以换个思路解决。
发表于:2007-04-10 16:51:325楼 得分:0
private   sub   worksheet_change(byval   target   as   range)
dim   temp()   as   string
if   target   like   "gx(*,*) "   then
temp   =   split(split(split(target,   "( ")(1),   ") ")(0),   ", ")
sheets(temp(0)).[a1]   =   temp(1)
target   =   " "
end   if
end   sub

用法:
sheet1单元格中键入gx(sheet3,2345),回车
发表于:2007-04-11 14:14:596楼 得分:0
學習,一定努力!
謝謝“狼行天下”and“ggl123”


快速检索

最新资讯
热门点击