02.02.2011 11:55    

erkamadem
Selam
exel de hazırladığım bir tablo var. bu tablo içindeki farklı hücrelerdeki verileri autocad dosyasında ayrı koordinatlara yönlendirebilirmiyim?

02.02.2011 12:40    

SENDUR
Excelde deki kordinatları autocad e aktara bilirsin.
örneğin hücreler içinde 232323,25452 şeklindeki rakamlar pline ile çizdirebilirsin.
pline enter sonra f2 ye bas excelde kordinatları olan hücreleri copyala ve yapıştır.
hatta z leri var ise ( 23232,32323,4546 şeklinde ise) 3dpoly ile kotlu ve kordinatlı çizdirebilirsin.

ama exceldeki virgül ile acaddeki nokta işine dikkat et

02.02.2011 13:40    

erkamadem
Ilginize teşekkür ederim, fakat sorum tam anlaşılmadı sanırım.
exel içindeki tablodan yazı veya rakam (ayrı ayrı)
autocad dosyası üzerinde farklı yerlere nasıl koordine edebilirim

excel den autocad'e veri aktarma işlemini yaptım. fakat küçük bir sorun var.
autocad programı kapatılıp açılınca excelden veri akışı devam ediyor.
fakat excel programı kapatılıp açılınca veri akışı kesiliyor.
programların ikisinide kapatıp açtığımda veri akışı devam edermi?
şimdiden teşekkürler. . .

ProhibiT (02.02.2011 17:04 GMT)

02.02.2011 17:09    

ProhibiT
Excel tablonuzu autocad'e ole (object linking and embedding) ile ilişkilendirmekten mi bahsediyorsunuz?

02.02.2011 18:46    

erkamadem
:) çok teşekkür ediyorum tam da aradığım buydu.

19.12.2011 10:53    

elkmuhendis30
Excel'den autocad'e veri aktarmak ile ilgili tüm siteleri gezdim ama aradığımı bulamadım. Bende biraz Visual Basic bilgimi kullanarak bir yöntem geliştirdim. Umarım işinize yarar.

Excel De Visual Basic Editörünü açın. "Insert " ve "Module" seçin. Sonra aşağıdaki kodları kopyala-yapıştır yapın.


Sub xy_koordinat_aktarma()
100
noktasayısı = InputBox(" Lütfen Nokta Sayısını Giriniz :", "XY KOORDİNAT AKTARMA")
noktasayısı = Int(noktasayısı)
If noktasayısı < 2 Then
MsgBox ("2 den küçük bir sayı girdiniz. Lütfen daha büyük bir sayı giriniz")
GoTo 100
End If
200
basamaksayısı = InputBox(" Lütfen Vilgülden sonra alınacak Basamak Sayısını Giriniz :", "XY KOORDİNAT AKTARMA")
basamaksayısı = Int(basamaksayısı)
If basamaksayısı < 0 Then
MsgBox ("Negatif bir sayı girdiniz. Lütfen 0 veya pozitif bir tam sayı giriniz.")
GoTo 200
End If

Open "XYKOORDINATAKTAR.LSP" For Append As #1
yazı = LTrim("(defun c:xyaktar()")
Print #1, yazı
x = Range("a" + LTrim(Str(1)))
y = Range("b" + LTrim(Str(1)))
x1 = Int(x)
x2 = Int((x - x1) * (10 ^ basamaksayısı))
y1 = Int(y)
y2 = Int((y - y1) * (10 ^ basamaksayısı))

yazı = " (setq p1 (list " + LTrim(Str(x1)) + "." + LTrim(Str(x2)) + " " + LTrim(Str(y1)) + "." + LTrim(Str(y2)) + ")"
Print #1, yazı

For i = 2 To noktasayısı
x = Range("a" + LTrim(Str(i)))
y = Range("b" + LTrim(Str(i)))
x1 = Int(x)
x2 = Int((x - x1) * (10 ^ basamaksayısı))
y1 = Int(y)
y2 = Int((y - y1) * (10 ^ basamaksayısı))

yazı = " p" + LTrim(Str(i)) + " (list " + LTrim(Str(x1)) + "." + LTrim(Str(x2)) + " " + LTrim(Str(y1)) + "." + LTrim(Str(y2)) + ")"
If i = noktasayısı Then yazı = yazı + ")"
Print #1, yazı
Next i
yazı = " (command " + LTrim(Chr(34)) + "pline" + LTrim(Chr(34)) + " p1"
Print #1, yazı

For i = 2 To noktasayısı
yazı = " p" + LTrim(Str(i))
Print #1, yazı
Next i
yazı = " " + Chr(34) + Chr(34) + " ))"
Print #1, yazı
Close #1
End Sub


Makroyu çalıştırınca "XYKOORDINATAKTAR.LSP" adlı bir dosya oluşturacaktır. Burada dikkat edilmesi gereken nokta Excel dosyanızda X koordinatları A sutununda, Y koordinatları B sutununda olmalıdır.
excelde bulunan noktalar:
5,918 2,212
10,124 3,545
15,625 4,123
18,156 4,235
21,22 4,356
25,145 4,587
29,147 4,666
32 4,878
35,1 4,95
38,5 5

( nokta sayısı 10, basamak sayısı 3 olarak girildiğinde) oluşturulan "XYKOORDINATAKTAR.LSP"

(defun c:xyaktar()
(setq p1 (list 5.918 2.212)
p2 (list 10.124 3.544)
p3 (list 15.625 4.123)
p4 (list 18.155 4.235)
p5 (list 21.219 4.355)
p6 (list 25.144 4.586)
p7 (list 29.146 4.666)
p8 (list 32.0 4.878)
p9 (list 35.100 4.950)
p10 (list 38.500 5.0))
(command "pline" p1
p2
p3
p4
p5
p6
p7
p8
p9
p10
"" ))

Daha sonra bu "XYKOORDINATAKTAR.LSP" dosyasını autocad çiziminizde yükleyin ve komut satırında xyaktar yazın. Koordinatlar pline olarak çizilecektir.

Bu makro ile binlerce noktayı tek seferde autocad dosyanıza aktarabilirsiniz.

29.09.2014 10:44    

eyavuzk
kolay gelsin, bu kodu uyguladığımız da autocad de komut bölümünde "nil" yazıyor sadece, herhangi bir çalışma olmadı acaba nere bir sorunum olabilir yardımcı olur musunuz.*

15.01.2015 14:49    

sahinbey2782
gps ile aldığım noktayı autocad e atmak istiyorum yardımcı olursanız sevinirim gps in markası magellan kullandığım autocad 2015
şimdiden teşekkürler

10.10.2020 15:02    

m_engineer
Alıntı
elkmuhendis30 :
Excel'den autocad'e veri aktarmak ile ilgili tüm siteleri gezdim ama aradığımı bulamadım. Bende biraz Visual Basic bilgimi kullanarak bir yöntem geliştirdim. Umarım işinize yarar.

Excel De Visual Basic Editörünü açın. "Insert " ve "Module" seçin. Sonra aşağıdaki kodları kopyala-yapıştır yapın.


Sub xy_koordinat_aktarma()
100
noktasayısı = InputBox(" Lütfen Nokta Sayısını Giriniz :", "XY KOORDİNAT AKTARMA")
noktasayısı = Int(noktasayısı)
If noktasayısı < 2 Then
MsgBox ("2 den küçük bir sayı girdiniz. Lütfen daha büyük bir sayı giriniz")
GoTo 100
End If
200
basamaksayısı = InputBox(" Lütfen Vilgülden sonra alınacak Basamak Sayısını Giriniz :", "XY KOORDİNAT AKTARMA")
basamaksayısı = Int(basamaksayısı)
If basamaksayısı < 0 Then
MsgBox ("Negatif bir sayı girdiniz. Lütfen 0 veya pozitif bir tam sayı giriniz.")
GoTo 200
End If

Open "XYKOORDINATAKTAR.LSP" For Append As #1
yazı = LTrim("(defun c:xyaktar()")
Print #1, yazı
x = Range("a" + LTrim(Str(1)))
y = Range("b" + LTrim(Str(1)))
x1 = Int(x)
x2 = Int((x - x1) * (10 ^ basamaksayısı))
y1 = Int(y)
y2 = Int((y - y1) * (10 ^ basamaksayısı))

yazı = " (setq p1 (list " + LTrim(Str(x1)) + "." + LTrim(Str(x2)) + " " + LTrim(Str(y1)) + "." + LTrim(Str(y2)) + ")"
Print #1, yazı

For i = 2 To noktasayısı
x = Range("a" + LTrim(Str(i)))
y = Range("b" + LTrim(Str(i)))
x1 = Int(x)
x2 = Int((x - x1) * (10 ^ basamaksayısı))
y1 = Int(y)
y2 = Int((y - y1) * (10 ^ basamaksayısı))

yazı = " p" + LTrim(Str(i)) + " (list " + LTrim(Str(x1)) + "." + LTrim(Str(x2)) + " " + LTrim(Str(y1)) + "." + LTrim(Str(y2)) + ")"
If i = noktasayısı Then yazı = yazı + ")"
Print #1, yazı
Next i
yazı = " (command " + LTrim(Chr(34)) + "pline" + LTrim(Chr(34)) + " p1"
Print #1, yazı

For i = 2 To noktasayısı
yazı = " p" + LTrim(Str(i))
Print #1, yazı
Next i
yazı = " " + Chr(34) + Chr(34) + " ))"
Print #1, yazı
Close #1
End Sub


Makroyu çalıştırınca "XYKOORDINATAKTAR.LSP" adlı bir dosya oluşturacaktır. Burada dikkat edilmesi gereken nokta Excel dosyanızda X koordinatları A sutununda, Y koordinatları B sutununda olmalıdır.
excelde bulunan noktalar:
5,918 2,212
10,124 3,545
15,625 4,123
18,156 4,235
21,22 4,356
25,145 4,587
29,147 4,666
32 4,878
35,1 4,95
38,5 5

( nokta sayısı 10, basamak sayısı 3 olarak girildiğinde) oluşturulan "XYKOORDINATAKTAR.LSP"

(defun c:xyaktar()
(setq p1 (list 5.918 2.212)
p2 (list 10.124 3.544)
p3 (list 15.625 4.123)
p4 (list 18.155 4.235)
p5 (list 21.219 4.355)
p6 (list 25.144 4.586)
p7 (list 29.146 4.666)
p8 (list 32.0 4.878)
p9 (list 35.100 4.950)
p10 (list 38.500 5.0))
(command "pline" p1
p2
p3
p4
p5
p6
p7
p8
p9
p10
"" ))

Daha sonra bu "XYKOORDINATAKTAR.LSP" dosyasını autocad çiziminizde yükleyin ve komut satırında xyaktar yazın. Koordinatlar pline olarak çizilecektir.

Bu makro ile binlerce noktayı tek seferde autocad dosyanıza aktarabilirsiniz.

> 1 <
Copyright © 2004-2022 SQL: 1.027 saniye - Sorgu: 66 - Ortalama: 0.01556 saniye