24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1023  |  回复: 3

yg4018

新虫 (初入文坛)

[求助] EXCEL中的VBA程序问题已有2人参与

我想用EXCEL的VBA程序实现以下峰值筛选功能:
符合以下条件的点:
               Ini>Ini+1
               Ini>Ini-1
               Ini>c
其中Ini为ni处的值,c为常数100,
满足以上条件的点即为峰值。这个程序应当怎样编辑?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhouxiaochun

铁杆木虫 (正式写手)

2楼2016-10-19 12:48:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

deephill

铁杆木虫 (职业作家)

【答案】应助回帖

不需要用vba, 你直接用if函数就可以了。
楼主的 这个  Ini>Ini+1  不好弄啊,

函数格式:
if(logical_test,value_if_true,value_if_false)。
其中:“logical_test”表示设定的条件,“value_if_true”表示当目标单元格与设定条件相符时返回的函数值,“value_if_false”表示当目标单元格与设定条件不符时返回的函数值。
例如,   =if(fenshu>=60,"及格","不及格"
        其中分数是你引用的单元格。

多个条件,可以用excel的多条件if函数 ,学习下这个就会了
https://zhidao.baidu.com/question/260093456.html
3楼2016-11-08 22:33:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

onelightwang

金虫 (小有名气)

【答案】应助回帖


jjdg: 金币+1, 谢谢 2017-03-02 03:17:06
dim S(10) as int   '预计峰值个数上线为10
dim T as int            '峰值数量
dim i as int       '计数君
   

for i=1 to N-1    'N为数据个数,请自行赋值
    if Cells(1,i) >C then
              if (Cells(i-1)-Cells(i))<0 ) and(Cells(i+1)-Cells(i))>0) then
                s(t)=i       
                T=T+1
              end if
    end if
next
4楼2017-02-28 06:12:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 yg4018 的主题更新
信息提示
请填处理意见