|
在论坛中有人问到,如何将窗体拷贝下来。
由于APPLICATION中的SENDKES不支持拷贝屏幕,所以一般的办法无法满足要求。
经过摸索,终于找到办法,现特将代码奉献如下。
1.在窗体前面加上如下代码:
- Option Explicit
- Private Declare Sub keybd_event Lib "User32" _
- (ByVal bVk As Byte, _
- ByVal bScan As Byte, _
- ByVal dwFlags As Long, _
- ByVal dwExtraInfo As Long)
- Private Sub UserForm_Click()
- keybd_event 44, 1&, 0&, 0& '如果是 0,0,0 就是整个屏幕拷贝,1,0,0是指当前活动窗口,本例中是指窗体
- DoEvents '给定充足的时间,让剪切板能够获取完数据
- ActiveSheet.Paste'粘贴到当前工作表中
- End Sub
复制代码 2.当你单击窗体时,就实现了你的愿望。窗体就以图片的形式粘贴到活动工作表中。单击窗体一次粘贴一次。
为节省论坛空间,附件就不上传了大家自行测试。
参见:将活动窗体拷贝到工作表中(方法二)
[ 本帖最后由 zldccmx 于 2009-5-28 13:47 编辑 ] |
|