我有一个Excel工作簿宏,它打开另一个工作簿并开始将数据复制到其中并进行格式化。在此过程中的某个时刻,我希望宏暂停并让用户手动将数据输入目标工作簿,然后继续处理。
MsgBox,Application.Wait()和Sleep都是应用程序模式,不会让用户在执行时更新其他工作簿中的任何内容。
我在搜索解决方案时找到了this。它让我走到一半,因为我可以操纵另一张纸但只能用我的鼠标操作。没有键盘按下发送到工作簿。
关于一路走来的任何想法?
我在想我可能只有两个宏。用户将运行一个,然后执行他的手动任务,然后运行另一个。这似乎有效但我必须将所有内容转换为全局变量,所以希望有人有更好的想法。
谢谢!
答案 0 :(得分:-1)
取决于正在运行以复制和粘贴的宏,在执行宏时,用户干预的主要问题是在用户操作某些内容后将活动单元格/工作表(如果使用)恢复为活动状态。
我建议将活动的单元格/表格地址存储在Application.Wait()之前的变量中,然后将活动单元格设置为恢复时的存储值。
虽然没有发布您的宏正在做什么,但很难知道这个建议是否有助于您当前的情况。