找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2071|回复: 17

[求助] [求助]:lisp读取excel的问题?

[复制链接]
发表于 2006-10-27 08:58:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
用read-line读取txt文件时,空行为"",结束行为nil。
如果用vlisp读取excel时,怎样判读excel表格已经结束?空单元格和超出表格行数的单元格读取数据都是nil。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-11-3 11:41:35 | 显示全部楼层
理论上,Excel表格有255x65535那么大,我相信你的意思是已经使用的单元格。
请参照ActiveSheet.UsedRange属性,然后可以解析这个Range得到实际的单元格范围。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-3 13:29:05 | 显示全部楼层
读EXCEL和文本文件根本是两回事。朋友。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-3 14:29:53 | 显示全部楼层
如果你想像 read-line 的方式操作
你得透過資料庫連結的方式去連結該 EXCEL 檔

如果不想那複雜,你可以使用
ActiveCell.CurrentRegion.Rows.Count

ActiveCell.CurrentRegion.Columns.Count
或像
ActiveSheet.UsedRange.Rows.Count
得到資料個數再去操作
ActiveCell.CurrentRegion 會傳回目前作用儲存格位置有資料相連的範圍
ActiveSheet.UsedRange 會傳回工作表使用的範圍大小


因為 CELL 可以儲存 數字, 文字, 公式
所以你得到的資料類型也會很多種
所以就算是空白列可能也不會那麼單純得到一個 ""
而可能是一個公式 (Formula)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-3 14:44:01 | 显示全部楼层
我一直在想通过lisp或者vlisp读取excel中的数据在cad中绘图,但没有进展,请会的高手们多提指导性意见。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-5 17:31:20 | 显示全部楼层
一段LISP+EXCEL 功能參考
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-6 09:58:48 | 显示全部楼层
楼上的兄弟何不提供非图片版的源代码?还是谢过!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-20 22:47:53 | 显示全部楼层
引自五楼jinsong-liao  的话:
我一直在想通过lisp或者vlisp读取excel中的数据在cad中绘图,但没有进展,请会的高手们多提指导性意见。

我也一直在研究,也曾发过几个求助帖,始终没有结果。
请五楼jinsong-liao 发布新主题,立题研究此问题。

*****众人划浆开大船*****
三个臭皮匠  顶个诸葛亮
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 7232个

财富等级: 富甲天下

发表于 2006-11-21 07:54:51 | 显示全部楼层
visit Site: http://www.ikozmos.com/
and search 'Excel'
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-21 10:06:37 | 显示全部楼层
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-21 11:35:35 | 显示全部楼层
6楼的lisp是用什么程序排的?
也可以有各种颜色,比较好看。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-23 13:22:56 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-23 14:17:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
这是我照的图片打的源码,没有检验过

(defun c:test ( / Xlapp)
(if (car (atoms-family 1 '("Vl-load-com")))(Vl-load-com))
(if (null (xet xlapp (vlax-create-object "Excel.application"))) (exit))
;(vla-put-visible xlapp :vlax-true)
(setq xlswrk (vlax-get-property xlapp 'workbooks))
(vlax-invoke-method xlswrk 'open "C:\\a.xls")
(setq xlsrng (vlax-get-property xlapp "range" "C14"))
(setq xlsval (vlax-variant-value (vlax-getproperty xlsrng "Value")))
(vlax-invoke-method Xlswrk 'Close)
(vlax-invoke-method Xlswrk 'Quit)
(vlax-release-object xlsrng)
(vlax-release-object Xlswrk)
(vlax-release-object xlapp)
(setq xlapp nil)
(setq bp (list 100.0 100.0 100.0))
(if (setq ss (ssget "x" (list (cons 0 "TEXT")(cons 10 bp))))
(progn
(setq ex (entget (ssname ss 0))
ex (subst (cons 1 slsval ) (assoc 1 ex ) ex))
(entnod ex))
(entmake ex (list
(cons 0 "TEXT")
(cons 8 (getvar "CLAYER"))
(cons 100 "Acdbtext")
(cons 10 bp)
(cons 11 bp)
(cons 50 (atan (cadr (getvar "ucsxdir"))(car (getvar "ucsxdir"))))
(cons 51 0)
(cons 1 xlsval)
(cons 40 30)))
;end  if
);end defun
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-11-24 20:50:11 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-26 01:41:10 | 显示全部楼层
楼上,我来试试看
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 22:28 , Processed in 0.388851 second(s), 62 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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