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

看板Office作者 (衝啊LUCKYBALL)時間7年前 (2016/09/27 00:58), 編輯推噓1(1023)
留言24則, 3人參與, 最新討論串1/1
軟體: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可以幫助解決, 但功力太淺希望能諮詢版上前輩, 還望能不吝賜教,謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.177.35.66 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1474909083.A.C95.html

09/27 07:18, , 1F
迴圈,迴圈內以原文寫到的if配合instr判斷是否有包含指定
09/27 07:18, 1F

09/27 07:21, , 2F
字串;以變數接msgbox vbyesno的選擇值
09/27 07:21, 2F

09/27 07:24, , 3F
當vbyes(6)時以right抓出最後(右側)數字到儲存格D3(range
09/27 07:24, 3F

09/27 07:25, , 4F
或cells);mid配合len抓倒數第二碼數字至儲存格C3
09/27 07:25, 4F

09/27 07:27, , 5F
當vbno(7)回到儲存格a1,以range.select
09/27 07:27, 5F

09/27 07:28, , 6F
如要中止迴圈用exit for
09/27 07:28, 6F

09/27 07:30, , 7F
或以range.find方式來找出指定字串
09/27 07:30, 7F

09/27 07:33, , 8F
至最後有值用range.end,偏移列或欄用offset
09/27 07:33, 8F

09/27 09:46, , 9F
myStr = InputBox("欄位選擇關鍵字輸入")
09/27 09:46, 9F

09/27 09:47, , 10F
myStr = "*" & myStr & "*"
09/27 09:47, 10F

09/27 09:48, , 11F
我現在儲存格找的到了
09/27 09:48, 11F

09/27 09:48, , 12F
也卡在挑字串
09/27 09:48, 12F

09/27 09:48, , 13F
myTable.Rows(myRow).Copy Range("c1000").End(xlUp).O
09/27 09:48, 13F

09/27 09:48, , 14F
ffset(1)
09/27 09:48, 14F

09/27 09:53, , 15F
我在想說不定要先把5跟8定義後先提取出來,後面方便用
09/27 09:53, 15F

09/27 17:50, , 16F
非常感謝s大和w大!!這個版有高手前輩真是受益良多!!!
09/27 17:50, 16F

09/29 20:36, , 17F
09/29 20:36, 17F

09/29 20:36, , 18F
試試看,我也研究很久
09/29 20:36, 18F

09/29 20:39, , 19F
tmprange1 as integer 是多餘的 可刪除
09/29 20:39, 19F

09/29 20:58, , 20F
我的儲存格範圍是引用定義表單自然產生的範圍y
09/29 20:58, 20F

09/29 20:59, , 21F
當然你能用vba range("65536").end(xlup).row 類似這
09/29 20:59, 21F

09/29 21:00, , 22F
種方式來找啦,我只是順便練習一下剛學的課程
09/29 21:00, 22F

09/29 21:01, , 23F
range("A65536").end(xlup).row 剛少打個A
09/29 21:01, 23F

10/01 01:13, , 24F
工作表1 才是喔
10/01 01:13, 24F
文章代碼(AID): #1NwLERoL (Office)