AutoLISP例程:读取excel文件.doc

AutoLISP例程:读取excel文件.doc

ID:55665481

大小:69.50 KB

页数:2页

时间:2020-05-23

AutoLISP例程:读取excel文件.doc_第1页
AutoLISP例程:读取excel文件.doc_第2页
资源描述:

《AutoLISP例程:读取excel文件.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、AutoLISP例程:读取excel文件好多讲述用vlisp读取excel文件的文章中都提到vlax-import-type-library这个函数,其实没有必要。该函数仅仅是给每个excel对象模型中的属性、方法、对象等引入一个别名,占内存很大,没有意义。用vlisp操作excel文件只要了解excel对象模型和vlax-get-or-create-object、vlax-get-property、vlax-invoke-method、vlax-put-property、vlax-safearray-type几个函数就可以了。下面的例子定义函数(GetCellValueA

2、sListexcelFilesheetNameRangeStr)读取如图所示的excel表格内容,返回list类型。 (defunc:test()(setqretV(GetCellValueAsList"E:\CAD\AutoLISP\LEARNING\book1.xlsx""BOM""A4:E6"))(princ)) (defunGetCellValueAsList(excelFilesheetNameRangeStr/xlwbswbshsshrgcsvvvnmsnmttt) (vl-load-com)(setqxl(vlax-get-or-create-obje

3、ct"Excel.Application"));创建excel程序对象(setqwbs(vlax-get-propertyxl"WorkBooks"));获取excel程序对象的工作簿集合对象(setqwb(vlax-invoke-methodwbs"open"excelFile));用工作簿集合对象打开指定的excel文件(setqshs(vlax-get-propertywb"Sheets"));获取刚才打开工作簿的工作表集合(setqsh(vlax-get-propertyshs"Item"sheetName));获取指定的工作表(setqrg(vlax-get-pr

4、opertysh"Range"RangeStr));用指定的字符串创建工作表范围对象(setqvvv(vlax-get-propertyrg'Value));获取范围对象的值(setqttt(vlax-safearray->list(vlax-variant-valuevvv)));转换为list(vlax-invoke-methodwb"Close");关闭工作簿(vlax-invoke-methodxl"Quit");推出excel对象(vlax-release-objectxl);释放excel对象(setqretttt))下图用VisualLISP的变量监视器查看到

5、底retV的值:从上图看出返回值中,每行数据一个list,行list组成一个结果list。List中的原子类型是variant,用函数(vlax-variant-valuevar)读取每个原子的值到lisp变量中就可以使用了。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。