[算表] excel搜寻特定资料后再做特定运算

楼主: healthbuy (健康买开心败~)   2015-05-13 00:09:04
软件:excel
版本:2007
版上前辈好
小弟手中资料因为含有不同单位并且没有依固定格式排列
现在想要把它统一转换成同一种单位刻度,并且只有数字格式
例如 208uA -> 0.208 (mA)
123456nA -> 0.123456 (mA)
现在的想法是利用"寻找与取代"的形式来实现
但是虽然单位消掉了,可是却卡在 do while 的循环出不来
想请各位前辈指导一下如何解决
目前程式如下~
Cells.Find(What:="uA", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,MatchCase:=False _
, MatchByte:=False, SearchFormat:=False).Activate
Do While ActiveCell <> ""
ActiveCell.Replace What:="uA", Replacement:=""
ActiveCell = ActiveCell / 1000
Cells.FindNext(After:=ActiveCell).Activate
Loop
Cells.Find(What:="nA", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,MatchCase:=False _
, MatchByte:=False, SearchFormat:=False).Activate
Do While ActiveCell <> ""
ActiveCell.Replace What:="nA", Replacement:=""
ActiveCell = ActiveCell / 100000
Cells.FindNext(After:=ActiveCell).Activate
Loop
现在可以顺利将 uA 的单位取代掉并且 /1000
但是却卡在 "Cells.FindNext(After:=ActiveCell).Activate" 出不来
会有"没有设定变量或 with 区块变量" 这个错误
拜托大家帮忙了~谢谢
作者: a086468 (睡睡)   2015-05-13 00:39:00
应该是找不到接下来的uA了,试试 On Error 陈述式
作者: soyoso (我是耀宗)   2015-05-13 00:43:00
楼主: healthbuy (健康买开心败~)   2015-05-13 22:49:00
可以了~感谢大大帮忙!另外请教一下,我原本的方式是哪方面错误?
作者: soyoso (我是耀宗)   2015-05-14 07:44:00
因取代后findnext找不到符合的储存格,activate时错误

Links booklink

Contact Us: admin [ a t ] ucptt.com