[算表] VBA儲存格包含某字則跳出訊息

作者: hotblood999 (衝啊LUCKYBALL)   2016-09-27 00:58:01
軟體:EXCEL
版本:2013
各位前輩高手好,
EXCEL VBA初學者希望能請教各路強者以下問題。
EXCEL示意圖如下:
A B C D
1 小君 小華
2 小安 小美
3 小明58 小和
我希望當偵測到儲存格A3包含"小明",
則啟動詢問視窗並提供是與否的選項,
當我選是則儲存格A3最後一碼數字"8"將覆蓋掉D3,
而儲存格A3倒數第二碼數字"5"覆蓋掉C3,
且回到A欄位中最後有文字的下一列(此例中為A4);
當我選否,則直接回到儲存格A1。
查詢後了解有if, msgbox,instr可以幫助解決,
但功力太淺希望能諮詢版上前輩,
還望能不吝賜教,謝謝!!
作者: soyoso (我是耀宗)   2016-09-27 07:18:00
迴圈,迴圈內以原文寫到的if配合instr判斷是否有包含指定字串;以變數接msgbox vbyesno的選擇值當vbyes(6)時以right抓出最後(右側)數字到儲存格D3(range或cells);mid配合len抓倒數第二碼數字至儲存格C3當vbno(7)回到儲存格a1,以range.select如要中止迴圈用exit for或以range.find方式來找出指定字串至最後有值用range.end,偏移列或欄用offset
作者: waiter337 (給開司一罐蘇格登)   2016-09-27 09:46:00
myStr = InputBox("欄位選擇關鍵字輸入")myStr = "*" & myStr & "*"我現在儲存格找的到了也卡在挑字串myTable.Rows(myRow).Copy Range("c1000").End(xlUp).Offset(1)我在想說不定要先把5跟8定義後先提取出來,後面方便用
作者: hotblood999 (衝啊LUCKYBALL)   2016-09-27 17:50:00
非常感謝s大和w大!!這個版有高手前輩真是受益良多!!!
作者: waiter337 (給開司一罐蘇格登)   2016-09-29 20:36:00
https://goo.gl/EtyIeL試試看,我也研究很久tmprange1 as integer 是多餘的 可刪除我的儲存格範圍是引用定義表單自然產生的範圍y當然你能用vba range("65536").end(xlup).row 類似這種方式來找啦,我只是順便練習一下剛學的課程range("A65536").end(xlup).row 剛少打個A工作表1 才是喔

Links booklink

Contact Us: admin [ a t ] ucptt.com