第一轮需求如下: 1、Excel中的表格能够在Word中显示出来。 2、Exce中的表格l改了之后,Word的表格中的内容要能够更新。 需要支持的平台是Mac下的Office 2011。 实现是: 在Excel中选中需要的表格区域,Copy。 在Word中Paste Special=>Paste Link=>HTML Format。 在Excel中改动一下表格内容,Word立马就会更新(理论上)。 但是有的时候它就是不同步更新。这个时候在菜单中选择Edit=>Links...=>选中Link=>Update Now。 是不是很简单?Office其实很强大的。 第二轮需求:Excel和Word发送给别人之后,Excel和Word的表格应该还能够保持同步。 实现是: 因为Word是以绝对路径存储Link的,所以在接到了别人发来的Word和Excel之后,要在Word中手工更新一下Excel文件的位置。 在菜单中选择Edit=>Links...=>选中Link=>Change Source 第三轮需求:Excel对表格的样式调整,不应该破坏Word对表格的排版。 实现是: 用Paste Link方式粘贴过来的内容,不但内容过来了,样式也过来了。样式过来了也就罢了,样式还阴魂不散。只要Excel那边调整了单元格大小,Word这边一同步样式就全毁了。 这个问题没有办法通过用户界面解决,只能通过VBA解决。参考:http://mac2.microsoft.com/vb/1033/Word/html/womthAddFieldsObj.htm。 设置PreserveFormatting为True,就可以保持Word这边的样式了。 第四轮需求如下: 1、Excel中的图表能够在Word中显示出来。 2、Exce中的图表l改了之后,Word的图表中的内容要能够更新。 实现是: 在Excel中选中图表,Copy。在Word中Paste。搞定。 在Excel中改动了数之后,Word这边就会更新。但是如果Excel那边改的是图表的样式,Word这边则不会。 原因是Word这边其实是按照Excel的图表生成了一个独立的新的图表,但是数据源是同一个Excel文件中的同一块单元格。 如果没有自动更新,用Edit=>Links..=>选中Link=>Update Now 第五轮需求是:Excel和Word发送给别人之后,Excel和Word的图表应该还能够保持同步。 实现是: 尝试一: 理论上来说,可以炮制前法,用Change Source的方式来解决绝对路径变化带来的问题。但是这个方法对图表来说不管用,至少Mac下的Office 2011不行,Windows下的没有试验过。用VBA来Change Source也是一样,仍然不行。 尝试二: 除了普通的Paste,不是还有Paste Link嘛。用Paste Link的话,应该就可以使用Change Source了。但是这种方式的问题是图表在Word这边就是图片了,而且分辨率很低,这样就影响了最终的输出质量了。 尝试三: 重新粘贴一遍嘛。用alt文字记录原始来源,用VBA重新粘贴一遍。暴力方法,当然是可行的。 尝试四: 让绝对路径不变不就行了么?用 hdiutil create test.dmg -megabytes 100 -ov -type SPARSEBUNDLE -fs HFS+J -volname test 生成一个dmg文件,然后把Excel和Word文档放到Mount出来的Drive里,这样绝对路径所有人都一样了 |