VBA实现点击消息框确定按钮后跳转至指定引用单元格
VBA点击消息框确定后自动跳转定位到指定单元格
你只需要在原有判断逻辑里,消息框弹出用户点击确认后、退出过程前,增加激活目标工作表、选中目标单元格的逻辑即可,注意必须先激活目标工作表再执行选中操作,否则从其他工作表触发代码时会报运行时错误。
修改后的完整代码如下:
If ThisWorkbook.Sheets("Pricing checklist").Range("B38").Value = "" Then MsgBox "Please enter the Sales Rep. " _ & vbCrLf & vbCrLf & "Press OK to go to the input cell.", vbCritical ' 激活目标工作表 ThisWorkbook.Sheets("Pricing checklist").Activate ' 选中待填写的目标单元格 Range("B38").Select Exit Sub End If
注意事项
- 原提示框文案写的是「Press OK to exit and try again」,和现在点击确定直接跳转定位的逻辑不匹配,上面代码里已经把文案调整为对应跳转逻辑的表述,你也可以根据自身需求保留原文案。
- 禁止不激活工作表直接调用单元格的
Select方法:VBA不允许跨工作表直接选中单元格,触发按钮在其他工作表时,跳过激活步骤直接选B38会抛出「Select方法作用于Range类失败」的运行时错误。 - 如果需要跳转后直接进入单元格编辑状态,可以在
Range("B38").Select后追加一行SendKeys "{F2}",常规使用场景下选中定位即可满足输入需求。
内容的提问来源于stack exchange,提问作者MisterBeans
相关产品推荐
相关产品推荐

