以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于表格粘贴的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71767)

--  作者:hdffzxf
--  发布时间:2015/7/17 15:47:00
--  关于表格粘贴的问题
将表中的某个区域数据复制往word中粘贴时,没有了表格线,表格线成了tab和回车换行符;但选择excel的某个区域数据往word中粘贴就能直接粘贴成表格,这个原理是什么?有什么办法可以将table的某个区域数据粘贴到word时保留表格线?
--  作者:大红袍
--  发布时间:2015/7/17 15:56:00
--  

 excel、word等Office文件有一个自己的复制粘贴板,之间的复制粘贴能保持格式

 

 在word中粘贴实际上是执行了如下代码 Selection.PasteExcelTable(False, False, False)


--  作者:hdffzxf
--  发布时间:2015/7/17 16:00:00
--  
那有什么办法通过整理剪贴板,将其整理成excel的格式?
--  作者:大红袍
--  发布时间:2015/7/17 16:02:00
--  

 不行。

 

要不你就复制的时候,打开一个excel,复制进去,再复制excel的内容.......

[此贴子已经被作者于2015/7/17 16:03:29编辑过]

--  作者:hdffzxf
--  发布时间:2015/7/17 16:04:00
--  
以下是引用大红袍在2015/7/17 16:02:00的发言:

 要不你就复制的时候,打开一个excel,复制进去,再赋值excel的内容.......

就是因为这个办法太蹩脚,所以才考虑是否可以直接粘贴,工作中涉及大量的这样的粘贴动作,想一劳永逸解决问题。


--  作者:hdffzxf
--  发布时间:2015/7/17 16:12:00
--  

老师们再想想办法,一定可以有办法解决的!


--  作者:大红袍
--  发布时间:2015/7/17 16:12:00
--  
 没有办法,只有4楼的方法。
--  作者:hdffzxf
--  发布时间:2015/7/17 16:17:00
--  
以下是引用hdffzxf在2015/7/17 16:04:00的发言:

就是因为这个办法太蹩脚,所以才考虑是否可以直接粘贴,工作中涉及大量的这样的粘贴动作,想一劳永逸解决问题。

你的意思是不是直接通过代码复制到excle后,再用代码复制excel的表格区域,这样就可以粘贴到word了,而不是手工往excel里粘!


--  作者:大红袍
--  发布时间:2015/7/17 16:29:00
--  

在foxtable拷贝内容以后,运行下面代码,再往word里面粘贴

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Add
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
wb.Saved = True
ws.paste
ws.UsedRange.copy
app.DisplayAlerts = False
\'app.visible = True
app.quit


--  作者:hdffzxf
--  发布时间:2015/7/17 16:56:00
--  
以下是引用大红袍在2015/7/17 16:29:00的发言:

在foxtable拷贝内容以后,运行下面代码,再往word里面粘贴

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Add
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
wb.Saved = True
ws.paste
ws.UsedRange.copy
app.DisplayAlerts = False
\'app.visible = True
app.quit

试过了,运行上述代码后,往word空白处粘贴是保留表格状态的,但是往word的已有表格中粘贴就会粘贴成嵌套状态,而用手工选择excel粘就不是嵌套l状态,看还需要加入什么代码避免粘成嵌套?

[此贴子已经被作者于2015/7/17 16:56:45编辑过]