作者SkateAdolf (出院 健康第一)
看板Visual_Basic
标题[VBA ] 取一数列中介於X的值
时间Mon Jan 31 13:39:24 2011
请问一下各位强者 小弟是VBA新手(才玩了一周)
日前因整理资料很繁琐 想要自行写VBA来简化步骤
目的: 一时间与电压的数列如下
Time V
1 2
2 3
3 4
4 3
5 3.5
6 2
7 4
8 4
9 3
10 1
11 0
以上只是假设资料
我想要取此讯号中 >=3的值与对应的时间
该区间中中若是有<3的我也要取
如time=6 我要此数字
但是我不要头尾的那些无义意讯号 如time=1, time=10~11
我自己写 都会把那个time=6的丢掉
而实际上我要的是 time=2~9的对应电压
请板上先进不吝赐教 谢谢!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.244.105.125
1F:→ qsss:所以, 你要的结果是什麽? 01/31 16:30
2F:→ MOONRAKER:从开头找第一个>=3的值,记下位置为 x 01/31 16:54
3F:→ MOONRAKER:从尾巴往头找第一个>=3的值,记下位置为 y 01/31 16:55
4F:→ MOONRAKER:最後取出 [ x, y ] 间的值。 01/31 16:55
那请问如果我的讯号内容不只一个波段呢?
EX:
time Voltage
1 2
2 3
3 4
4 1
5 5
6 4
. 中间皆为0
.
.
100 2
101 4
102 5
103 5
104 2
我只希望可以取第一个波段 且该波段间需具有小於3的数目
我要结果如下
time Voltage
3 4
4 3
5 5
6 4
这样就没有办法从後面找回来了 请问有其他写法吗
我自己概念是 cells(i,1).value>4 而且 cells(i+j,1).value>3 时开始取值
j就看抓多少可能j=1(只是举例) 但是函数不熟好像都没效果
加上我要处理的资料数都上万笔 这种写法电脑跑EXCEL超级慢的
再次请益一下 谢谢各位
※ 编辑: SkateAdolf 来自: 60.244.105.125 (02/01 10:11)
※ 编辑: SkateAdolf 来自: 60.244.105.125 (02/01 10:13)
5F:→ MOONRAKER:只靠>=3设定开始和结束太模糊。你要归纳出其他pattern 02/01 17:50
6F:→ MOONRAKER:例如连续多少个0就不算数之类的 02/01 17:50
7F:→ necsa:用Excel排序後再扣掉不要的时间 02/01 23:59