找回密码
 请使用中文注册

手机号码,快捷登录

手机号码,快捷登录

查看: 331|回复: 0

自动将图片发送到微信

[复制链接]
阅读字号:

1368

主题

50

回帖

2万

积分

超级版主

积分
27457
发表于 2023-7-16 10:53:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?请使用中文注册

×
前面我们学习了如何利用剪切板、延时、模拟按键将Excel中的内容发送到微信,今天我们来学习如何将单元格区域作为一个图片发送给微信,或者是将文件夹的图片发送给微信,话不多说,下面我们直接来看看代码解决方案。
一、将单元格区域作为图片发送到微信

有如图所示成绩表,现在需要将它自动发送到微信


d7d35f1e6ecd435684423bbd6499796c.png

30734bb025f149127bcf3dae7396c011.png

Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)Sub 自动发微信2()    Name = "文件传输助手"'    Msg = "这是一条自动发送的微信"    Set ws = CreateObject("wscript.shell")    ws.SendKeys "^%w"    Sleep 500    ws.Run "mshta vbscript:ClipboardData.SetData(" & Chr(34) & "text" & Chr(34) & "," & Chr(34) & Name & Chr(34) & ")(close)", 0, True    Sleep 500    ws.SendKeys "^f"    Sleep 500    ws.SendKeys "^v"    Sleep 500    ws.SendKeys "{ENTER}"    Sleep 500    Range("A1").CurrentRegion.CopyPicture Appearance:=xlScreen, Format:=xlBitmap'    ws.Run "mshta vbscript:ClipboardData.SetData(" & Chr(34) & "text" & Chr(34) & "," & Chr(34) & Msg & Chr(34) & ")(close)", 0, True    Sleep 500    ws.SendKeys "^v"    Sleep 300    ws.SendKeys "{ENTER}"    Set ws = NothingEnd Sub其实对于工作表区域,我们只需要利用单元格对象的CopyPicture就可以将单元格区域复制为图片。所以相对于之前的文本发送到微信,只需更改第16行代码。这里就不多解释代码含义了,不懂的可以参考前两篇

使用VBA自动发微信

VBA自动发微信2

效果如下:


7a31d27d84ae82b29053ff659d5d7bf8.gif
二、将文件夹图片发送到微信‍如下图所示,我要将以下图片发送到微信‍‍

c90b41e95e326f10e0da29a115876d5c.png

661c6479b8f3f5b3bf2804798594cf0e.png


Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)Sub 自动发微信3()Dim shp As Shape, PicPath As String    PicPath = "C:\Users\jares\Pictures\联想截图\联想截图_20230328205736.png"    Name = "文件传输助手"    Set ws = CreateObject("wscript.shell")    ws.SendKeys "^%w"    Sleep 500    ws.Run "mshta vbscript:ClipboardData.SetData(" & Chr(34) & "text" & Chr(34) & "," & Chr(34) & Name & Chr(34) & ")(close)", 0, True    Sleep 500    ws.SendKeys "^f"    Sleep 500    ws.SendKeys "^v"    Sleep 500    ws.SendKeys "{ENTER}"    Sleep 500    Set shp = ActiveSheet.Shapes.AddPicture(PicPath, False, True, 1, 1, 400, 300)    Sleep 500    shp.Copy'    Range("A1").CurrentRegion.CopyPicture Appearance:=xlScreen, Format:=xlBitmap    Sleep 500    ws.SendKeys "^v"    Sleep 300    ws.SendKeys "{ENTER}"    shp.Delete    Set ws = NothingEnd Sub第4行:指定图片路径第17行:将图片插入Excel,注意根据图片大小调整Sleep时间,否则可能发不过去第19行:复制图片第25行:将刚插入的图片删除
其余都和前面的一样的,这里就不多说了,下面来看看效果吧

8e8e3568725861450f113f2251ab2e0d.gif

好了,本期教程就到这里啦,走过路过的点个关注分享一下吧,

您需要登录后才可以回帖 登录 | 请使用中文注册

本版积分规则

QQ|Archiver|手机版|家电维修论坛 ( 蜀ICP备19011473号-4 川公网安备51102502000164号 )

GMT+8, 2025-6-2 21:30 , Processed in 0.170926 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表