25.01.2013 21:59    

ProhibiT
Merhaba arkadaşlar.

Sitemizde çok sorulan ve istek alan, AutoCAD'den Excel'e tablo türü veri aktarma işlemini yapan bir fonksiyon paylaşıyorum.
Nasıl alırım? Nasıl Yüklerim? Kısayolu (ne demekse!) nedir? gibi sorularla muhatap olmak hiç hoş olmuyor. Bu konulara yabancı olan arkadaşlara tavsiyem; Soru sormadan önce,

Linkleri görebilmek için ÜYE olmalısınız.

ve

Linkleri görebilmek için ÜYE olmalısınız.

"Lisp dosyalarının oluşturulması ve yüklenmesi" konularını okumalarıdır. Söz konusu linklerde detaylarıyla anlatılan konular hakkında hiç bir soruya cevap verilmeyecek, kimse kusura bakmasın mesajlar da silinecektir.

Yazar arkadaşlar için bir kaç detaylardan bahsetmek isterim. Fonksiyon kodları incelendiğinde görüleceği gibi, VBA (Visual Basic for Application) veya .NET Framework kullanmadan tüm işlemler, AutoLisp içinden ActiveX kullanılarak çözülmüştür. Verilerin içinde bulunduğu sınırların (hücrelerin) belirlenip, biri biriyle ilişkilerinin tanımlanması için geliştirdiğim algoritmayı ilgi duyan arkadaşlara ayrıca anlatırım.

Kodların buradan alınıp Lisp dosyasının oluşturulması konusunda bazı arkadaşlarımızın yaşadığı problemler göz önüne alınarak, Fonksiyon sitemizin download bölümüne eklenmiştir. Kullanıma hazır şekilde indirebilirsiniz.

Linkleri görebilmek için ÜYE olmalısınız.



Tabloyu oluşturan objelerin seçimi bitince, Excel programının çalıştırılması ve gerekli bağlantıların kurulması için hissedilir bir süre beklenmesi normaldir, telaş etmeyiniz. Fonksiyon tamamlanıp Autocad komut satırına dönüldüğünde, Görev Çubuğu (Task Bar) üzerinde beliren (açık) Excel simgesine tıklayarak geçiş yaptıktan sonra, dosyada istenen işlemler yapılabilir.

Herkese kolay gelsin...

ProhibiT (22.02.2013 08:01 GMT)

26.01.2013 06:44    

waytooraider
Resmen rüyalarımdaki gibi olmuş.
Elinze,aklınıza sağlık hocam.

26.01.2013 07:39    

SENDUR
Hocam ellerinize sağlık. Çooooooooooooook güzel olmuş

26.01.2013 11:37    

CAN123
Hocam süper olmuş, emeğinize sağlık.

27.01.2013 21:01    

ProhibiT
Teşekkür ederim arkadaşlar.

Bazı detayları biraz daha genişleterek açıklamakta fayda var;



Resimde görüldüğü gibi, Attribute içeren INSERT (BLock Reference) objeleri, Text, MText ve Field objeleri, tablonun Veri Objeleri olarak alınırlar.

Tablo sınırlarını (Hücre sınırları) belirleyen objeler, Line, Polyline veya Lwpolyline türü objeler olabilirler.

Veri bölgeleri (Hücreler) tek bir hücreden ibaret olabileceği gibi, birleşmiş hücreler de bulunabilir. Hücrelerin birleştirilmesinde Excel'deki range mantığı gereği, dikdörtgen bir tanım alanı söz konusudur.

Tablo elemanları seçildiğinde, dört bir yanında kenarlık bulunmayan (hücre içinde bulunmayan) objeler tabloya dahil edilmezler, işleme alınmazlar. Resimde A, B, C ve D harfleriyle belirlenen sütun numaraları ile, 1'den 9'a kadar olan satır numaraları her yanından sınır çizgileriyle kuşatılmadıklarından Veri olarak işleme alınmayacaklardır.

Gene resimde görüldüğü gibi hücre sınırlarını belirleyen çizgiler, biri biriyle kesişmek zorunda değiller. Bir çizginin hücre sınırı olarak algılanabilmesi için, ortogonal olarak 4 doğrultudan birinde, Veri objesinin Insertion Point'inden geçen ortonal hatlardan biriyle kesişmesi yeterlidir.

Belirlenen bu şartlar altında, hücre sınırlarını belirleyen çizgilerin mutlaka Ortogonal olmaları gereği kendiliğinden ortaya çıkmaktadır. Satır veya sütun çzigileri ortogonal olmadıklarında, program tarafından arada başka hücrelerin de olduğu anlaşılacağından, tablo yanlış oluşturulacaktır.

Mtext türü veri objeleri çok satırlı bir yazı içeriyorsa, bunların Excel'e aktarılmasında bir sıkıntı var. Satır atlama karakteri "\P" karakterleri aynen Excel hücresine veri olarak aktarılırlar. Excel hücrelerinde satır atlama kavramı "Wrap Text" biraz farklı olduğu için böyle bir aksaklık söz konusu oluyor. Bununla ilgili bir çözüm geliştirirsem bunu da ekleyeceğim.

Kolay gelsin.

ProhibiT (06.02.2013 13:44 GMT)

27.01.2013 21:13    

Travaci
Teşekkürler.

01.02.2013 12:33    

SaiL
Ellerinize sağlık, çok güzel olmuş..

06.02.2013 13:36    

ProhibiT
Çok satırlı MText objeleri ile, aynı hücrede satır düzeninde birden çok veri hücresi olması durumlarında da işlem yapacak şekilde düzenlenip güncellendi. Bir hücre içinde aynı satırda birden çok veri objesi varsa (y koordinatları eşit, x koordinatları farklı) objelerden biri yazılmaz. Bu durumda, bir hücre içinde aynı satırda yer alan objelerin birleştirilmesi kullanıcının sorumluluğundadır.

admin (12.12.2017 21:03 GMT)

06.02.2013 20:40    

Travaci
Dosya yüklenirken misplaced dot on input hatası alıyorum.

06.02.2013 21:15    

serkanvan
tşkler

07.02.2013 01:23    

ProhibiT
Copy/Paste ile alınırken hataya sebep olan "\\" karakterleri düzeltildi. Tekrar denerseniz problem çıkmayacaktır.

07.02.2013 07:08    

waytooraider
Sürekli kullanacağım harika bir lisp olmuş ayrıca textleri dikdörtgenin içine alınca hepsini excelde tek hücrenin içine alması benim için inanılmaz zaman kazancı oldu.Tam aradığım şey.

Tek kelime ile sanat eseri olmuş.Koruma altına alınmalı bu lisp.Harikasınız ellerinize, aklınıza sağlık Hocam.

waytooraider (07.02.2013 07:16 GMT)

12.02.2013 18:31    

ProhibiT
Güzel sözleriniz için teşekkür ederim waytooraider :)

Kodların buradan alınıp Lisp dosyasının oluşturulması konusunda bazı arkadaşlarımızın yaşadığı problemler göz önüne alınarak, Fonksiyon sitemizin download bölümüne eklenmiştir. Kullanıma hazır şekilde indirebilirsiniz.

Linkleri görebilmek için ÜYE olmalısınız.

ProhibiT (22.02.2013 08:00 GMT)

22.02.2013 07:56    

ProhibiT
AutoCAD'den Excel'e Tablo Aktaran Lisp Fonksiyon'u sitemizin download bölümünden indirebilirsiniz.

Linkleri görebilmek için ÜYE olmalısınız.

22.02.2013 12:48    

fırat çam
Hocam kolay gelsin. lispi verdiğiniz linkten download edemiyorum a 404 Not Found hatası veriyor. acaba kodları da burda paylaşsak olmaz mı?

22.02.2013 14:14    

ProhibiT
Kodlar foruma konduğunda sık karşılaştığımız hatalarla uğraşmamak için download bölümüne eklendi. Şimdilik 174410-acxl.rar linkine tıklayarak indirebilirsiniz. Download bölümündeki link düzeltilecektir.

22.02.2013 15:41    

fırat çam
Tamamdır teşekkür ederim emeğinize sağlık. tabloyu güzel bir şekilde alabiliyorum artık :) bir de tablodaki işaretler (yuvarlak veya çarpı olur ya) gelse tam olacak.

02.03.2013 18:43    

karsmurat
Alıntı
ProhibiT :
Kodlar foruma konduğunda sık karşılaştığımız hatalarla uğraşmamak için download bölümüne eklendi. Şimdilik 174410-acxl.rar linkine tıklayarak indirebilirsiniz. Download bölümündeki link düzeltilecektir.

tesskurler

02.03.2013 18:44    

karsmurat
tesskurler calısmanızdan dolay ı

28.05.2013 18:55    

canip
Dosyayı çalıştırdığımda aşagıdaki hata mesajı çıkıyor.Bunu nasıl düzeltebiliriz.Saygılarımla...


; error: no function definition: vlax-ename->vla-object

Copyright © 2004-2022 SQL: 1.989 saniye - Sorgu: 102 - Ortalama: 0.0195 saniye