[算表] 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