[算表] VBA如何將字串內容視為邏輯運算內容?

作者: foolkids (翼をください)   2021-05-18 11:56:56
軟體: Office Excel
版本: 2013
我有個需求,需要將字串內容視為運算內容,例如:
Debug.Print 某種語法(“1 = 1”)
結果要得到 True
會有這個需求是因為字串內容是隨機的,不限制有幾項判斷,也不限定And或Or,
所以希望可以整理成單一字串後進行判斷。
自串可能會是:
A Or B and C Or D Or E …
以上,還請各位高手協助,感激不盡!
手機提問,排版不佳請見諒
作者: soyoso (我是耀宗)   2021-05-18 12:28:00
內文寫到的某種語法,可以用evaluate,如debug.printevaluate("1=1") 回傳true,看是否可以應用到實際字串內,有可能會需要調整寫法
作者: foolkids (翼をください)   2021-05-18 12:43:00
謝謝so大,目前 And Or沒問題了,但是好像無法處理Like,有建議的方式嗎?在考慮是不是用Instr當替代方案…哎呀,我搞錯了,And Or也不行,好像只能是= <>這種符號…想說先問問看so大,沒有的話可能就要自己寫Function來處理了
作者: soyoso (我是耀宗)   2021-05-18 13:00:00
and和or也是可以,只是寫法要調整,如"and(1=2,1=1)","or(1=2,1=1)",會類似工作表函數的寫法
作者: foolkids (翼をください)   2021-05-18 13:02:00
謝謝!那Like有解嗎?一般工作表的寫法沒有Like,都是用Find() > 0 …
作者: soyoso (我是耀宗)   2021-05-18 13:11:00
如果可以調整為工作表函數的find的話,寫法如"find(""a"",""daef"")>0"
作者: foolkids (翼をください)   2021-05-18 13:16:00
https://photos.app.goo.gl/7Fmrn3ZQSw1V3ysE8後來用這個方式實現了!相簿有點問題,我回去再重新整理一下

Links booklink

Contact Us: admin [ a t ] ucptt.com