创建宏从Excel中复制单元格的范围内字(需要保持格式化)

我复制一个单元格区域从Excel到Word使用宏。 有些我复制细胞的使用INDIRECT函数在Excel中。 我想,让所有格式保持将它复制为图片,但我想不出为什么它不工作。 当我使用下面的代码,都是看到的是#VALUE在包含间接功能细胞。 这是奇怪,因为如果我手动剪切和过去到Word它的工作原理和实际的数字显示,他们在EXCEL做的。 我尝试了几个不同的粘贴选项,但没有奏效。 谁能指教? 我在用

appWD.Selection.PasteSpecial数据类型:= wdPasteEnhancedMetafile

我也试过appWD.Selection.Paste但没有采取格式化从Excel使用,但它确实需要的数据。

--------------解决方案-------------

嗨,

尝试这个,

选择所需的范围,并运行此代码

[编辑..]

子ExcelToWord_AsPic()

“2014年1月14日
常量PEXT的String =“.PNG”'<<照片。 延期
如果MSGBOX(“选择人气指数?”,vbOKCancel)= vbCancel然后退出小组
昏暗的RNG作为范围
设置RNG =选择
ActiveSheet.Range(rng.Address).CopyPicture xlScreen,xlPicture
随着ActiveSheet.ChartObjects.Add(左:= rng.Left,上方:= rng.Top,宽度:= rng.Width,身高:= rng.Height)
SNAME = .Name点
结束与
随着ActiveSheet.ChartObjects(SNAME)
.Chart.Paste
.Chart.Export ThisWorkbook.Path&“\ PIC”&PEXT
。删除
结束与
昏暗wdApp作为对象
设置wdApp =的CreateObject(“Word.Application”)
昏暗wdDoc作为对象
设置wdDoc = wdApp.Documents.Add
随着wdDoc.PageSetup
.TopMargin =“0.41”
.BottomMargin =“0.61”
.LeftMargin =“0.51”
.RightMargin =“0.51”
结束与
昏暗的图片
随着wdDoc.ActiveWindow.Selection
设置PIC = .InlineShapes.AddPicture(ThisWorkbook.Path&“\ PIC”&PEXT)
结束与
随着图片
.Height = pic.Height
.WIDTH = pic.Width
杀ThisWorkbook.Path&“\ PIC”&PEXT
结束与
wdApp.Visible = TRUE
昏暗的FNAME
FNAME =“ 新FILE.DOC”'<<<变化word文件名
Application.DisplayAlerts =假
wdDoc.SaveAs ThisWorkbook.Path&“\”&FNAME
Application.DisplayAlerts = TRUE

结束小组

注意

保存Word文档。 在此工作簿路径

分类:办公室 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 2.570 (s). 10 q(s)