ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3354|回复: 6

to:hhcpa——如何与excel建立联接

[复制链接]

TA的精华主题

TA的得分主题

发表于 2003-7-6 20:24 | 显示全部楼层 |阅读模式
(一)在Word中调用Excel 首先,我们熟悉一下Excel的基本对像:工作簿对像与集合(Workbook、Workbooks)、工作表对像与集合(Worksheet、Worksheets)、单元格对像Range。这些对像在实际使用时,与我们前面介绍的“面向对像”的思想完全相同。 下例将Word中活动文档的第一段发送到Excel中,并将内容放到B3单元格中—— ’’’’==========Word联系Excel例=========== Sub 联系例一() Dim Arange Dim Aexl Arange = ActiveDocument.Paragraphs(1).Range’取得Word中第一段的文字 Set Aexl = CreateObject("Excel.Application")’利用标识符启动Excel Aexl.Visible = True’将Excel显示出来 Aexl.workbooks.Add’新建一个工作簿 Aexl.Range("B3") = Arange’将文字写入工作表中的B3单元格 Set Aexl = Nothing'终止两个程序间的联系 End Sub 代码说明: Set与CreateObject关键字,用于创建一个对其它Office组件对像的引用,无论您是在任意Office组件中,引用其它的任意Office组件,都必须使用这两个关键字。 Nothing关键字用于终止两个程序间的联系,如果没有这个关键字,程序的联系始终存在,将消耗掉大量的系统资源,容易造成死机。 “Aexl.Visible = True”这段代码用于将Excel对像显示出来。如果没有这一句,Excel将在后台运行,您可以按下“Ctrl+Alt+Del”三键,从系统进程中看到。 (二)在Excel中调用Word 本例在Excel中运行,假定在C盘Text文件夹下有一个MyDoc.doc文件,我们将在excel中启动word,并将MyDoc.doc文件第二自然段的内容写入到Excel第一个工作表的“b8”单元格中。 启动Excel打开VBA,写入如下代码: Sub 联系的例子二() Dim wd Dim Arange Set wd = CreateObject("word.application")’利用标识符启动WOrd wd.Visible = True’显示Word wd.documents.Open ("C:\Text\MyDoc.doc")’打开欲操作的对像 Arange = wd.documents(1).paragraphs(2).Range’取得要使用的文字 Workbooks(1).Worksheets(1).Range("b8") = Arange’将文字写入相应单元格 Set wd = Nothing '终止两个程序间的联系 End Sub 与前例类似,就无需解释了吧?

TA的精华主题

TA的得分主题

发表于 2003-7-8 21:03 | 显示全部楼层
一枝梅,我看了你这篇文章,感觉很好,与我想解决的问题很相似。 可是我不会编程, 你可否帮我也想想办法。谢谢。 一天ctrl+C,CTRL+V 一千多次实在是受不了了。万分感谢。 问题如下。 请教,如何简便地把word中的文字分部分导入excel, 大家好,初次来到贵论坛,感觉很清新。大致浏览了一下,获益非浅。多钻研excel这样的实用软件,感觉对自己的工作多有帮助。 我个人有一个小问题,请教个位了。 因工作需要,我经常得把一个word的文件中若干部分复制到excel表中。 比方word文件中有第一部分,1-3段。第二部分,4-8段。第三部分。9-10段。 我现在是手动的复制连贴到excel中去,使得A1=第一部分,1-3段。 A2=第二部分,4-8段。 A3=第三部分。9-10段。 ........ 因为经常有近千个部分,手动的复制paste非常麻烦。 大家有没有什么好方法,可以简便一点的。 或者能否遍个小程序,帮助我一下。 我自己想了想,这样可以实现。 比方我先在word每一部分结束的地方,加一个特定的符号。 当一个程序扫描word文档到这个符号时,就到前面的部分复制到excel的相应格子中去。 然后程序再继续扫描,至word文档结束。 因我不会编程,请哪位大虾帮忙,万分感谢

TA的精华主题

TA的得分主题

发表于 2003-7-9 09:30 | 显示全部楼层
楼主: 如何实现word后页调用前页的某些字段、句子,而不是自然段?我用OLE对象链接由于路径的问题,换台机子、换个目录链接就失效,应该怎样解决、或在什么地方修改路径?

TA的精华主题

TA的得分主题

 楼主| 发表于 2003-7-9 21:14 | 显示全部楼层
三楼的, 你提的问不大明白—— 1、在“同一篇文章”中引用前面的字符串有必要用OLE吗? 用range对像不就行了吗?将特定的range对像赋给变量,然后在用引用该对像的地方调用这个变更不就行了吗? 2、如果是在“不同的文章”中引用字段,到其他机子上当然会出现路径问题了! 你说的到底上什么情况?不清楚。

TA的精华主题

TA的得分主题

发表于 2003-7-9 21:17 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
七叶一枝梅,你好!   非常高兴收到你的短消息,我相信只要有你出手,一定能够成功。 你的方法我觉得大有希望,不过看起来非常复杂。我想可能是我没有把文件发给你的缘故。 我把我的源文件word和结果文件excel发给你,能否请高手你帮我调试一下。 现在的excel文件就是我想要的效果,不过这是我手动输进去的。 再次谢谢你。 IbDfJb5R.rar (40.59 KB, 下载次数: 39)

TA的精华主题

TA的得分主题

发表于 2006-3-28 00:25 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2006-3-28 09:58 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

2003年的七兄贴子,今天有兄台翻出来。

对我看来仍然是思路清晰,方法易懂。

仿佛就是在昨天的事。

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-16 09:32 , Processed in 0.035857 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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