guitarguy1685 发表于 2022-7-5 15:36:45

哦,我明白了。太糟糕了,老板没有看到它的效用。我曾在一家幕墙公司工作,有一份关于紧固件的大量BoM excel表。这被链接到我们床单上的表格。但我也有自由支配权去做我想做的事。

Jim Clayton 发表于 2022-7-5 15:38:37

是的,就是这样。。。认为我们公司的标准是基于海外的实践。尽量充分利用它,用我面前的工具让事情变得不那么乏味。不幸的是,至少据我所知,没有“现成”的解决方案。我试过了我遇到的每一个Lisp例程,但都没有成功。。。一切都很顺利。非常令人沮丧。

BIGAL 发表于 2022-7-5 15:41:42

我使用Getexcel。lsp和一个函数是获取一系列单元格并制作一个lisp列表,这将是所有相关行,然后只是拾取起点并不断重复插入块填充属性的情况。这是最简单的部分。
 

; GetExcel - Stores the values from an Excel spreadsheet into *ExcelData@ list
;   Syntax:(GetExcel ExcelFile$ SheetName$ MaxRange$)
;   Example: (GetExcel "C:\\Folder\\Filename.xls" "Sheet1" "L30")

 
我只是需要找点时间。

rlx 发表于 2022-7-5 15:45:57

做了很少的测试和例行程序是我写的其他功能的一部分,但可能它的工作。。。现在回来为我工作。。。
吉姆。lsp

Jim Clayton 发表于 2022-7-5 15:48:09

RLX将测试上述Lisp。将随时通知您。谢谢你花时间帮忙。
 
 
BigAl-我试着使用GetExcel Lisp,我能够“抓取”单元格范围,但什么都没有发生。它只是抓取它们并将其显示在命令行中。我不知道怎么把它们贴在任何地方。我肯定这是用户的错误,但出于好奇,我想知道我做错了什么。。。主要是因为我已经做了这么久了。谢谢

Jim Clayton 发表于 2022-7-5 15:51:43

你真是个天才!这太棒了。为了继续使用它,我需要做一些小的调整,所以如果有人能帮我,我会非常感激,但总的来说,它正在做它应该做的工作。
 
 
调整:对于“项目编号”和“库存代码”,这些数字作为数字引入,但需要作为值引入。
示例:数字=1.00,数字=55983835.00
值=1,值=55983835
 
 
此外,我找不到启动此命令的命令。我只能通过加载Lisp启动它一次,然后我必须关闭绘图并重新开始。
 
 
最后,它一次粘贴一行。如果我尝试粘贴3行,它不会粘贴第二行。这很可能是用户错误,可以通过某种方向解决。
 
 
再一次,这很好。非常感谢你的帮助。这给了我一些东西作为基点。

rlx 发表于 2022-7-5 15:54:15

 
 
我已经从我的vt.lsp中粘贴了它,所以我没有做太多更改以避免它停止工作的风险。但只需将第一个defun重命名为“(defun VT\u PasteFromExcel”,并将其重命名为“(defun c:JimWillFixIt或其他任何名称)。然后删除lisp文件(VT\u PasteFromExcel)中的最后一行。我通常在测试时使用它来自动启动例程。现在,您可以在命令提示符下使用JimWillFixIt或(c:JimWillFixIt)启动例程。
 
 
在文件的中间找到一行“;********更改为(rtos val 2 0)->无小数,(rtos val 2 2)=2小数。只需将下一行(rtos val 2 2)更改为(rtos val 2 0)
 
 
没有你提到的跳过一行的问题。也许关掉osnap?
 
 
 
gr.Rlx

Jim Clayton 发表于 2022-7-5 15:58:15

精度已设置,命令已分配,但仍然无法了解粘贴行的情况。这很奇怪,因为如果我尝试粘贴三行,它会跳过第2行,但如果我尝试粘贴两行,它只会给我第一行。。顺便说一句,这整件事太棒了。这正是我想要做的。非常感谢你。

Jim Clayton 发表于 2022-7-5 16:01:10

好的,我把这三行都贴好了,但第一次一行叠一行,第二次贴得很完美。现在我们有3种变体。

rlx 发表于 2022-7-5 16:04:52

 
 
已检查objectsnap设置,否则添加(setvar“osmode 0)
 
 
gr.Rlx
页: 1 [2]
查看完整版本: 我知道有人问过这个问题