明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2380|回复: 6

Excel的xls文件到底如何与ACAD简单的相联系

[复制链接]
发表于 2005-5-6 21:20:00 | 显示全部楼层 |阅读模式
excel,大家总是费尽心机的使用各种方法用LISP与他进行数据库的连接,其实你在记事本中按照表格的形式组织数据,保存为excel,后缀,在excel中照样能使用,到这里,大家应该知道我想说的到底是什么问题:

无需Excel也可以把任何数据保存为一个Excel可以读取的xls文件。你可以用记事本生成一个Test.txt文件:

Name Age
Bell 24
Wang 34
Gates 43

然后存盘,把文件名改为Test.xls。注意字段之间用Tab键隔开,而不是空格。然后双击该文件,好事发生了,该文件被Excel打开了,并读出了其中的数据。每一个字段中的数据都放在了一个Cell中。(Excel2000)

事实上,字段分割符可以是任何字符,如分号,逗号,空格。不过,在这些情况下(分割符不是Tab),Excel会弹出数据导入向导对话框,问你以什么字符作为分割符,以及日期的转换格式等等。

结论:Excel对于纯文本内容的xls文件,会试图将其看作一个文本表格,每一行认为是一条记录,行中以分割符分开的各个部分认为是记录的各个字段的值。缺省的分割符是Tab制表符。

这样,任何数据集都可以简单地通过往一个文本文件中写数据,而生成一个Excel可读的xls文件了。在Delphi中,Tab制表符以#9表示,如:LineStr := Str1 + #9 + Str2 。

这样的优缺点:
1、导出数据无需Excel。
2、导出速度较快。
3、读取速度较慢。(Excel要转化数据格式)

如,有一个朋友问过的需要在主机上生成Excel文件,再通过Web发布的情况,就可以这样实现了。
发表于 2005-5-8 09:03:00 | 显示全部楼层
受益,好东西
发表于 2005-6-2 17:39:00 | 显示全部楼层
谢谢
发表于 2005-6-17 13:12:00 | 显示全部楼层
利!TAB
发表于 2012-2-5 14:50:22 | 显示全部楼层
您写个这个方法很好,有几个问题想请教:
背景:我从cad 图纸中通过程序已经读到了如下数据
zh-123123-3"-(01cj0s01)
p-123123-3"-(01cs0s01)
lps1-145239-5"-(09ck2s02)
想在excel中得到如下结果:
图纸名称 eg.62-120-D-001.dwg
code   No.         size  rate
  zh     123123   3"    01cj0s01
p       123123   3"    01cs0s01
lps1     145239   5"    09ck2s02

问题如下:
1)在lisp中用什么函数可以根据“-”得到分开后的数据zh 123123 3" 01cj0s01
2) (write-line txt ff)程序中用这句直接得到一个字符串,程序怎么写得到您上面所说的各个单元格内容用tAB隔开。
3)怎么提取出该文件的文件名,写在文本文件中。主要是为了用此方法检查一套图纸中有没有重复的管道号。如果有,可以很快看出重复的号在哪张图纸上。
4)在文本文件中,怎么把所有的空格键替换成tab键,我试验了几把都是在替换框中跳到另外的按钮,输入不了tab。
先提前谢谢了。
发表于 2012-2-5 19:31:49 | 显示全部楼层
顶,简单好用。

不过需要人工干预,不利于自动化。

有谁能做个像openDCL一样的外挂,加载后可以直接在lsp程序中进行数据库查询就方便了。
发表于 2012-2-5 21:05:54 | 显示全部楼层

zh-123123-3"-(01cj0s01)
p-123123-3"-(01cs0s01)
lps1-145239-5"-(09ck2s02)
复制到记事本中,以×××.xls存盘(注意选择保存类型为所有文件),
用Excel打开×××.xls文件,
选中A列,单击菜单数据(D)→分列(E))→选分隔符号(D))→
下一步(N)>)→勾选其它(O),在其右侧的编辑框中输入-,单击
完成(F)即得到所求的结果。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-17 16:01 , Processed in 0.196467 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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