- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Visual LISP与Excel电子表格
Microsoft Excel 在当今世界上的电子表格应用软件产品中占有绝对的统治地位。我们经常可以看到财会部门或人事部门利用它来处理日常的一些数据。虽然说 Access 在数据处理方面会比Excel好些,但它在一些简单的日常事务中象执行一些快速输入或排序时却不那么方便简单。它是一个常用的事务处理工具。这10年来,有许多AutoCAD程序是用于将提取数据并将其输出为报告。不论什么原因,它是很必要的。近10年来所见到的除了极少部分外(如Terry Dotson的 /), 输出的机制均为输出为 ASCII文本文件,或有些是带格式文件。这是因为10年来,我们没有 Visual LISP 或 VBA 使程序与其它应用软件相连通并在相互之间传递信息。现在可以了。 如果你还一直在使用逗号或TAB分界符的文本来区分你的数据,你应该好好地看看这篇文章了。
Visual LISP (VBA也可以) 提供了必要的函数来接触和与任何提供了类型库(内部暴露API[应用程序接口程序]的应用程序相联系。通常它是VB或VBA。这一类应用程序包括 Microsoft Office (Access, Excel, Word, 还有象Outlook 和 PowerPoint), 以及象 MathCAD, Visio、Actrix等产品。在你的代码中的第一件事就是必需在Visual LISP中加载ActiveX/COM。它是通过(vl-load-com) 函数来完成的。第一件事尝试与 Excel 连接上就是搜索Excel的类型库文件。这里使用了Excel 2000 (9.0) 作为例子。示例1演示了怎样通过Excel不同版本来取得与其类型库相关联。注意 Excel 2002 用的是可执行文件来身来代替在以往版本中所使用的分离的TLB或OLB文件。Figure 1: 加载Excel 97 类型库 (vl-load-com) (defun DSX-TypeLib-Excel ( / sysdrv tlb)(setq sysdrv (getenv systemdrive))(cond( (setq tlb (findfile (strcat sysdrv \\Program Files\\Microsoft Office\\Office\\Excel8.olb)))tlb)( (setq tlb (findfile (strcat sysdrv \\Program Files\\Microsoft Office\\Office\\Excel9.olb)))tlb)( (setq tlb (findfile (strcat sysdrv \\Program Files\\Microsoft Office\\Office\\Excel10.olb)))tlb)( (setq tlb (findfile (strcat sysdrv \\Program Files\\Microsoft Office\\Office\\Excel.exe)))tlb)( (setq tlb (findfile (strcat sysdrv \\Program Files\\Microsoft Office\\Office10\\Excel.exe)))tlb))) 下一步是加载类型库并定义内部接口的属性、方法和恒量。这些都可以使用任意名称的前缀,该前缀只是用于对外部应用程序的快速及合理地调用。 以下的文章内容将把类型库的前缀均置为斜体以方便区分。示例2演示了一个简单的函数来加载类型库并判断是否成功返回T或nil:Figure 2: 定义类型库接口 (defun DSX-Load-TypeLib-Excel ( / tlbfile tlbver out)(cond( (null msxl-xl24HourClock)(if (setq tlbfile (DSX-TypeLib-Excel))(progn(setq tlbver (substr (vl-filename-base tlbfile) 6))(cond( (= tlbver 9)(princ \n初始化 Microsoft Excel 2000...) )( (= tlbver 8)(princ \n初始化 Microsoft Excel 97...) )( (= (vl-filename-base tlbfile) Excel.exe)(princ \n初始化 Microsoft Excel XP...)))(vlax-import-type-library:tlb-
您可能关注的文档
- Vc++2005+sql2000数据库编程第三篇.doc
- Vc++2005+sql2000数据库编程第四篇:数据库改用access2003.doc
- Vc++2005+sql2000数据库编程第五篇.doc
- VC++ 6.0 在全国计算机等级考试中的应用.doc
- VC++ 连接SQL Server 20000.doc
- VC++ 使用ADO连接数据库.doc
- Vc++ADO教程.doc
- VC++笔记.doc
- VC++程序设计模拟试题一.doc
- vc++程序设计项目说明书.doc
- 2025年北京市东城区事业单位招聘工作人员(106人)考前自测高频考点模拟试题及答案详解(必刷).docx
- 2025年乐昌市秀水镇村基层公共服务站系统操作员招聘(3人)考前自测高频考点模拟试题参考答案详解.docx
- 2025年乐昌市白石镇招聘上黄村基层公共服务站系统操作员(1人模拟试卷精编答案详解.docx
- 2025年内蒙古自治区公安厅面向社会招聘警务辅助人员(206人)模拟试卷附答案详解(轻巧夺冠).docx
- 2025年中共张家界市委政法委员会关于招聘公益性岗位工作人员的笔试备考试题附答案详解(考试直接用).docx
- 2025年十堰市竹山面向社会引进高层次急需紧缺人才(9人)模拟试卷及答案详解参考.docx
- 2025年北京大学第一医院宁夏妇女儿童医院(宁夏回族自治区妇幼保模拟试卷含答案详解(达标题).docx
- 2025年中山市坦洲人民医院招聘总会计师(1人)模拟试卷含答案详解(夺分金卷).docx
- 2025年中国福利会发展研究中心(宋庆龄儿童发展中心、中国福利会考前自测高频考点模拟试题及答案详解(.docx
- 2025年呼伦贝尔市纪委监委所属事业单位引进人才(8人)考前自测高频考点模拟试题含答案详解(达标题).docx
文档评论(0)