Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]如何用VBA把剪贴板里的图片保存到图片文件

韩志  发表于:2011-09-28 20:33:40  
复制

如何用VBA把剪贴板里的图片保存到图片文件.

求代码

 

Top
dbaseIIIer 发表于:2011-09-29 00:49:28

你要提供你用什么绘图软件, 又可以用VBA来操作的啊!

 

据我所知, 你不用第三方控件的话,

 

能运行VBA代码的有 Access, Excel, Powerpoint, Word, infopath, visio, outlook 等,

都没有保存图片为通用格式如 jpg,GIF 等 的功能的!

 

就算你安装了 CORELDRAW 13版以后, 你可以用VBA来操作, 都没有这个功能!

因为 CorelDraw 是保存向量图片的, VBA只可以做到贴上剪贴板并导出,

但大小,DPI,等都不会跟原来的一样! 也要安装 CorelDraw 才可以。

而COREL PAINT 里面又不支持 VBA运行环境!

 

所以, 你要用的是 第三方控件, 确实有很多的,

但都要钱的, 也不是每个第三方控件 都能在 Access 里运行,

也不一定能操作 剪贴板内数据!



叶海峰 发表于:2011-09-29 11:05:44
以下代码是Visio2007里面录的一个宏,功能是插入一个图片,然后另存为另外一个图片文件
Sub Macro2()
    Dim UndoScopeID1 As Long
    UndoScopeID1 = Application.BeginUndoScope("导入")
    Application.ActiveWindow.Page.Import "C:200954043725552绿.jpg"
    Application.EndUndoScope UndoScopeID1, True
    ActiveWindow.DeselectAll
    ActiveWindow.Select Application.ActiveWindow.Page.Shapes.ItemFromID(1), visSelect
    Application.ActiveWindow.Selection.Export "C:绘图1.jpg"
End Sub

 

插入的图片可以看作是一个变量,不知道能不能取代楼主说的在粘贴板里面提取



dbaseIIIer 发表于:2011-09-29 16:44:26

楼上的知道 VISIO有导出图片就可以编了!

 

不过楼上的是导入图片啊! 要求是从剪贴板贴上图片啊!

 

我没有VISIO, 有的朋友请试一下录制一段宏,

 

就是贴上,然后输出

 

然后拷代码出来用就可以了!



麥田 发表于:2011-10-11 09:26:10
VBA保存剪贴板为JPG(加PrtScrn截屏)-Access软件网
http://www.accessoft.com/article-show.asp?id=5915
VBA保存剪贴板为Bmp(加PrtScrn截屏)-Access软件网
http://www.accessoft.com/article-show.asp?id=5916

总记录:4篇  页次:1/1 9 1 :