[已解決]LISP問題(COMMAND "OPEN")
5 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
[已解決]LISP問題(COMMAND "OPEN")
(defun c:lsp_0626()
(setvar "cmdecho" 0)
(setvar "filedia" 0)
(setq SelectFile (getfiled "選取檔案" "" "txt" 2))
(setq LeaderFile (open SelectFile "r"))
(setq Data (read-line LeaderFile))
(while Data
(command "open")
(command Data)
(command "close")
(setq Data (read-line LeaderFile))
)
(setvar "filedia" 1)
(close File)
(prin1)
)
此程式是我自己練習寫的...目標是希望開啟DWG檔並更改內部的東西
我手上一共用五百多張的圖...所以需要程式自己開啟檔案並關閉
黑色的部份目前是沒問題的....
紅色的部份(command "open")是對CAD下達指令open....
因為程式前面有修改系統變數(setvar "filedia" 0)所以不會出現open檔案時的對話框
但是.....結果卻如下
指令: (command "open")
open
指令: nil
這樣我就沒辦法輸入要開啟的檔案路徑及名稱...
請教各位前輩....是不是我搞錯了什麼??又或是有什麼其他解決辦法.....
(setvar "cmdecho" 0)
(setvar "filedia" 0)
(setq SelectFile (getfiled "選取檔案" "" "txt" 2))
(setq LeaderFile (open SelectFile "r"))
(setq Data (read-line LeaderFile))
(while Data
(command "open")
(command Data)
(command "close")
(setq Data (read-line LeaderFile))
)
(setvar "filedia" 1)
(close File)
(prin1)
)
此程式是我自己練習寫的...目標是希望開啟DWG檔並更改內部的東西
我手上一共用五百多張的圖...所以需要程式自己開啟檔案並關閉
黑色的部份目前是沒問題的....
紅色的部份(command "open")是對CAD下達指令open....
因為程式前面有修改系統變數(setvar "filedia" 0)所以不會出現open檔案時的對話框
但是.....結果卻如下
指令: (command "open")
open
指令: nil
這樣我就沒辦法輸入要開啟的檔案路徑及名稱...
請教各位前輩....是不是我搞錯了什麼??又或是有什麼其他解決辦法.....
leoneriol 在 2009-06-29, 11:24 作了第 4 次修改
leoneriol- 榮譽顧問
- 文章總數 : 818
年齡 : 40
來自 : 基隆市七堵區
職業 : 機電工程公司-繪圖(工地)
愛好 : 看小說
個性 : 不愛說話-反應慢
使用年資 : 6年
使用版本 : 2008 & 2012
積分 : 27
經驗值 : 9199
威望值 : 960
發帖精華 : 1
回帖精華 : 1
注冊日期 : 2009-03-12
回復: [已解決]LISP問題(COMMAND "OPEN")
你的問題我曾碰過,OPEN在 LISP語言中 是一個函數,所以無法當作 開啟圖檔 的指令~
我都是使用 SCRIPT指令(腳本) 來開啟檔案!!
LISP可能要看其他高手提供解決方法~
腳本檔的附檔名為scr,可以使用 記事本 編寫完畢後另存為 xxx.SCR 即可。
在AutoCAD輸入 SCRIPT指令 來執行 腳本檔 即可。
但是上面那個是範例,你需要再按照你公司的路徑修改腳本檔!!
至於製做腳本檔(SCR),本身須有巨集攥寫能力及經驗,F1也有中文說明,其實只要明白後,你會發現寫腳本不會很難,但是這部分跟寫程式一樣需反覆測試,再來慢慢累積經驗值!
我都是使用 SCRIPT指令(腳本) 來開啟檔案!!
LISP可能要看其他高手提供解決方法~
腳本檔的附檔名為scr,可以使用 記事本 編寫完畢後另存為 xxx.SCR 即可。
在AutoCAD輸入 SCRIPT指令 來執行 腳本檔 即可。
但是上面那個是範例,你需要再按照你公司的路徑修改腳本檔!!
至於製做腳本檔(SCR),本身須有巨集攥寫能力及經驗,F1也有中文說明,其實只要明白後,你會發現寫腳本不會很難,但是這部分跟寫程式一樣需反覆測試,再來慢慢累積經驗值!
____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
回復: [已解決]LISP問題(COMMAND "OPEN")
(command "vbastmt" (strcat "AcadApplication.Documents.Open" (chr 34) "filename.dwg" (chr 34)))
解決了.....利用VBA的程式碼可以開啟~~
解決了.....利用VBA的程式碼可以開啟~~
leoneriol- 榮譽顧問
- 文章總數 : 818
年齡 : 40
來自 : 基隆市七堵區
職業 : 機電工程公司-繪圖(工地)
愛好 : 看小說
個性 : 不愛說話-反應慢
使用年資 : 6年
使用版本 : 2008 & 2012
積分 : 27
經驗值 : 9199
威望值 : 960
發帖精華 : 1
回帖精華 : 1
注冊日期 : 2009-03-12
回復: [已解決]LISP問題(COMMAND "OPEN")
謝謝回報!leoneriol 寫到:(command "vbastmt" (strcat "AcadApplication.Documents.Open" (chr 34) "filename.dwg" (chr 34)))
解決了.....利用VBA的程式碼可以開啟~~
這樣我也學了一招~
******************************************************
謝謝分享~< 積分 +1>
[公告]關於團隊成員的回文及貢獻
____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
回復: [已解決]LISP問題(COMMAND "OPEN")
爬文學習中----謝謝分享
jjch001- 一般會員
- 文章總數 : 20
年齡 : 47
來自 : 高雄縣
職業 : 建築繪圖員
愛好 : 電玩
個性 : 呆呆的
使用年資 : 1?年多
使用版本 : 2008版
經驗值 : 5585
威望值 : 0
注冊日期 : 2009-08-19
回復: [已解決]LISP問題(COMMAND "OPEN")
leoneriol 寫到:(command "vbastmt" (strcat "AcadApplication.Documents.Open" (chr 34) "filename.dwg" (chr 34)))
解決了.....利用VBA的程式碼可以開啟~~
leoneriol 感謝你,
最近剛好在傷腦筋怎麼用巨集開啓檔案,自已試了好幾之都還沒試出方法來,沒想到一上來"好地方"找答案,還真的給我找到你的這篇回覆,
謝謝你的分享,我學習了!
ginse0727- 高級會員
- 文章總數 : 256
年齡 : 50
來自 : 台北巿
職業 : 帷幕牆
愛好 : 電玩,漫畫,網路小說
個性 : 宅男/正直/死腦筋
使用年資 : 退伍後工作迄今,10年以上
使用版本 : 2012
積分 : 14
經驗值 : 6828
威望值 : 500
發帖精華 : 1
注冊日期 : 2010-07-13
回復: [已解決]LISP問題(COMMAND "OPEN")
感謝,正需要這程式,謝謝分享,
jeouen- 一般會員
- 文章總數 : 60
年齡 : 56
來自 : 高雄市
職業 : 展示設計師
愛好 : 畫畫、手工藝
個性 : 恰北北
使用年資 : 從AUTO CAD R9 到現在
使用版本 : 2012
經驗值 : 5612
威望值 : 9
注冊日期 : 2010-04-26
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章