[分享]vlisp-excel函数的修改
<p>近日想编一个CAD与EXCEL之间进行数据传递的程序。直接采用了网站上提供的源代码。的确省去了不少的麻烦。但是在使用中也发现了问题,比如(vlxls-range-getid RangeObject)函数,按照作者的示例可以用来返回在EXCEL中所选定单元格范围的ID,但是在实际应用中该函数出现错误无法正常使用。经反复跟踪调试发现实由于作者提供的代码有一定的问题,经改动以后得到了正确的结果。</p><p>更改以后的函数代码如下:调试的环境是winxp-sp2+autocad2006+office2007简体中文版。有兴趣的朋友可以试一下。</p><p>(Defun vlxls-range-getID (range / col row dx dy);;;;返回指定单元格范围的ID<br/> (setq dx (vlxls-get-property range "Rows.Count")<br/> dy (vlxls-get-property range "Columns.Count")<br/> row (vlxls-get-property range "Row")<br/> col (vlxls-get-property range "Column")<br/>;;;以下注释的代码为原作者所提供,调试中无法通过。MergeArea好像仅能用于已经合并后的单个单元格 <br/>;;; (setq dx (vlxls-get-property range "MergeArea.Rows.Count")<br/>;;; dy (vlxls-get-property range "MergeArea.Columns.Count")<br/>;;; row (vlxls-get-property range "MergeArea.Row")<br/>;;; col (vlxls-get-property range "MergeArea.Column") <br/> )<br/> (strcat (vlxls-rangeid (list col row))<br/> ":"<br/> (vlxls-rangeid (list (1- (+ col dy)) (1- (+ row dx))))<br/> )<br/>)</p> 哦 谁能把整个LISP操作EXCEL的代码带解释贴出来! 谁能把整个LISP操作EXCEL的代码带解释贴出来 <p>大家可以在网上搜索下,内容太多贴不上来:</p><p><a href="http://atablex.com/htmls/vlxls-functions.htm">http://atablex.com/htmls/vlxls-functions.htm</a></p><p> </p> <p>大家还可以去<strong><u>KozMos</u></strong>公司的网站上直接下载。</p><p><a href="http://www.versiontracker.com/dyn/moreinfo/win/63304&mode=feedback">http://www.versiontracker.com/dyn/moreinfo/win/63304&mode=feedback</a></p><p>下面是在上面的网址里下载的源代码及示例文件包。</p> 好的,帮了我的大忙.thanks
页:
[1]