Hoi Allemaal,
Ik zit met een issue dat een één van jullie vast wel eens heeft meegemaakt. Ik ben opzoek naar een lispcode die XY-coord. uitleest uit een Excelbestand en vervolgens een block op dat punt plaatst. Uiteraard kan ik het bestand ook omzetten in een kommagescheiden txt-file
Voorbeeld Excel-bestand
kolom A B C
regel
1 135.01 250.1 tafel
2 140.4 250.45 stoel
..
500 100 100 legenda
In kolom A en B staan de coordinaten en in kolom C staat de blockname.
Jullie reactie zie ik graag tegemoet.
m.vr.gr.
Arjan
Beste Arjan,
Het lijkt mij dat je het makkelijkst kan doen, door een block in te voegen met de DDE methode.
Van de DDE methode of de Dynamic Data Exchange methode zie je voorbeelden in de schatkamer
http://www.cadsite.be/smf/index.php?topic=672.0
Open als voorbeeld in AutoCAD 2010 de tekening 'In deze tekening zit het block Lantaarn met een attribuut.dwg'
en open in Excel DDE-BLK.xls en laat de macro Blocks lopen.
In je eigen situatie zal je:
1) Aan het begin Const ver As Integer = 18 mogelijk moeten veranderen,
want 18 is alleen geschikt voor AutoCAD 2010 en AutoCAD 2011
2) In de macro blocks de bladnaam Blad = "Blad1" mogelijk moeten veranderen
3) In de macro blocks de blocknaam = "Lantaarn" mogelijk moeten veranderen
Met vriendelijke groet, HofCAD CSI.
PS Als het te moeilijk voor je is, dan kun je het excelbestand naar mij
mailen, zodat ik het voor je programeer.
Ik denk dat je hier wel wat aan hebt. :mrgreen:
http://www.jefferypsanders.com/autolisp_IMPORTXYZ.html (http://www.jefferypsanders.com/autolisp_IMPORTXYZ.html)
En hiermee kun je alle kanten op. Zelfs de goede.
Het gebruik staat hier goed beschreven.
Download link:
http://web2.airmail.net/terrycad/Lisp/GetExcel.lsp (http://web2.airmail.net/terrycad/Lisp/GetExcel.lsp)
GetExcel is a general purpose function for (Excel to AutoCAD) and (AutoCAD to Excel) applications. Special credit to Gilles Chanteau from Marseille, France for his sub-functions ColumnRow, Alpha2Number and Number2Alpha. The syntax for the functions are easy to follow and include documentation of the conditions of each argument in the function headings.
Citaat van: Joop op di 21 09 2010, 09:36:05
En hiermee kun je alle kanten op. Zelfs de goede.
Het gebruik staat hier goed beschreven.
Download link:
http://web2.airmail.net/terrycad/Lisp/GetExcel.lsp (http://web2.airmail.net/terrycad/Lisp/GetExcel.lsp)
GetExcel is a general purpose function for (Excel to AutoCAD) and (AutoCAD to Excel) applications. Special credit to Gilles Chanteau from Marseille, France for his sub-functions ColumnRow, Alpha2Number and Number2Alpha. The syntax for the functions are easy to follow and include documentation of the conditions of each argument in the function headings.
Van de vrienden van Google:
CiteerOeps! Deze link lijkt niet te werken -
Bedoelde u: web2. airmail. net/ terrycad/ LISP/ GetExcel. lsp (http://web2.%20airmail.%20net/%20terrycad/%20LISP/%20GetExcel.%20lsp)
Is een mooie site: http://web2. airmail. net/ terrycad/ (http://web2.%20airmail.%20net/%20terrycad/)
Citaat van: Joop op di 21 09 2010, 09:11:16
Ik denk dat je hier wel wat aan hebt. :mrgreen:
http://www.jefferypsanders.com/autolisp_IMPORTXYZ.html (http://www.jefferypsanders.com/autolisp_IMPORTXYZ.html)
Dit is een prima oplossing en werkt goed.
Mijn dank is groot
Citaat van: Arjan2010 op di 21 09 2010, 09:53:02
Dit is een prima oplossing en werkt goed.
Mijn dank is groot
Beste Arjan,
Je hebt toch verschillende blocks!
Kijk daarom ook eens naar mijn attachment: het bijgevoegd DuckKantoor.zip bestand.
Met vriendelijke groet, HofCAD CSI.
PS Open de AutoCAD tekening DuckKantoor.dwg en open daarna het Excel bestand DuckKantoor.xls.
Klik op knop Info voor informatie en klik daarna op de knop 'Insert Blocks'
op het werkblad DDE.
Door deze laatste knop wordt de macro Blocks gestart, waardoor de meubels geplaatst worden.
Men kan ook op het werkblad Scripting via de knop COPY kolom F kopieren en dan deze plakken
op de commandoregel van AutoCAD.
Voor een ander voorbeeld zie bijv. http://www.cadsite.be/smf/index.php/topic,1491.0.html
of http://www.cadsite.be/smf/index.php?topic=672.0 en bijv. http://www.theswamp.org/index.php?topic=31527.msg372480#msg372480