Diskuzní fórum, poradna
?CAD diskuze, rady, výměna zkušeností

|
Odpovědět ![]() |
archiv |
Autor | |
Jarek ![]() Nováček ![]() Přihlášen: 19.čer.2005 Stav: Offline Bodů: 9 |
![]() Zasláno: 11.čvc.2005 v 09:16 |
Kótuji (asi 6 kót propočítaných v excelu) stále stejné výkresy a nesmím použít tabulkové kótování. Asi rozložím kóty a pomocí OLE to propojím jako text. Nic lepšího mě nenapadá. Nemáte někdo lepší nápad? Používám LT2006. |
|
![]() |
|
Augur ![]() Zasloužilý člen ![]() Přihlášen: 24.led.2005 Stav: Offline Bodů: 103 |
![]() |
Ja osobne by som to robil atributmi. Rozlozil by som koty, text by som definoval ako atribut bloku a potom pomocou exportu a inportu by som menil hodnotu koty. Asi je zlozity sposob, ale ine mna nenapada.
|
|
![]() |
|
SlepyJack ![]() Nováček ![]() Přihlášen: 15.čvc.2005 Stav: Offline Bodů: 2 |
![]() |
Ono by to šlo hadam aj tak že z excelu to priamo vytvori scr subor ktory sa potom v AutoCADe LT spusti ako demo a vsetko vykresli tak ako treba.
|
|
![]() |
|
Jarek ![]() Nováček ![]() Přihlášen: 19.čer.2005 Stav: Offline Bodů: 9 |
![]() |
Dík oběma, ale s tím scr bych to potřeboval vysvětlit podrobněji |
|
![]() |
|
Jan Pajerchin ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Diskutér ![]() ![]() Přihlášen: 18.čvc.2005 Lokalita: Slovensko Používám: ZWCAD, AutoCAD Stav: Offline Bodů: 78 |
![]() |
Skript je textový súbor s jednym príkazom na každom riadku.
Napríklad pre nakreslenie štvorca s absolútnymi súradnicami bude súbor s príponou *.scr obsahovať: ; Začiatok _line 0,0 0,100 100,100 100,0 _c "prázdny riadok" ; koniec Z toho vyplýva že ak chcete z Excelu vygenerovať *.scr súbor, ktorý sa potom v AutoCADe (aj v LT) spustí príkazom "demo", a vykreslí všetko čo treba - je potrebné do súboru z Excelu zapisovať všetky hodnoty v podstate s globálnymi súradnicami spolu s príslušnými hodnotami kót, ktoré majú byť z Excelu . Ak sa jedná o rovnaký výkres len s rozdielnymi hodnotami kót - mohlo by to byť celkom dobré riešenie. Najviac práce však bude vytvoriť celú "kostru" príkazov s hodnotami. To Vám môže uľahčiť len jedna vec - Ak nakreslíte jednu variantu Vášho výkresu so zapnutou voľbou - vytváranie protokolového súboru. T.j. súboru kde sa ukladajú všetky vykonávané príkazy až do chvíle kým sa neukončí AutoCAD. Ukladajú sa síce bez hodnôt - ale ako kostra to stačí. Hodnoty doplníte a máte syntax pre Váš *.scr súbor. |
|
![]() |
|
Jarek ![]() Nováček ![]() Přihlášen: 19.čer.2005 Stav: Offline Bodů: 9 |
![]() |
Vypadá to zajímavě, ale nevíte kde bych nějaké příklady stáhnul, abych mohl podle nich postupovat?
|
|
![]() |
|
Jan Pajerchin ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Diskutér ![]() ![]() Přihlášen: 18.čvc.2005 Lokalita: Slovensko Používám: ZWCAD, AutoCAD Stav: Offline Bodů: 78 |
![]() |
Hádam príklady ani nie sú veľmi potrebné.
Vyzsie uvedený príklad sa môže napísať aj takto: _line 0,0 0,100 100,100 100,0 _c Kde medzera vlastne predtavuje enter. Takze stačí si to vyskúšať. Vytvorte si súbor napr: priklad.scr a do neho vložte uvedený riadok: _line 0,0 0,100 100,100 100,0 _c (na konci je medzera) do AutoCADu ho nacitate prikazom demo. a vykresli to stvorec. Alebo mate na mysli VisualBasic a Excel ? Upravil Jan Pajerchin |
|
![]() |
|
Jarek ![]() Nováček ![]() Přihlášen: 19.čer.2005 Stav: Offline Bodů: 9 |
![]() |
Už chápu. Dík moc :)
|
|
![]() |
|
Jan Pajerchin ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Diskutér ![]() ![]() Přihlášen: 18.čvc.2005 Lokalita: Slovensko Používám: ZWCAD, AutoCAD Stav: Offline Bodů: 78 |
![]() |
Ale lepšia voľba je to priamo vykresliť z Excelu do AutoCADu LT cez DDE kanál
pripájam príklad myslím že na LT 2002 by to malo fungovať LT2000 určite a hádam aj na LT2004-6 Popis zdrojového kódu na vykreslenie tabuľky z Excelu do AutoCADu LT ------------------------ AppActivate ("AutoCAD LT") Urobí aktívnym okno AutoCADu LT chanelNumber = Application.DDEInitiate("AutoCAD LT.DDE", "System") Umožní AutoCADu LT prijímať príkazy cez prostredie Windowsu (otvorí DDE kanál) Application.DDEExecute chanelNumber, " _line 0,0 0,100 100,100 100,0 _c " Spustí príkazy inej aplikácie cez nastavený kanál DDE Application.DDETerminate chanelNumber Zatvorí otvorený kanál DDE na inú aplikáciu End Sub ------------------------ Procedúru umiestni však môžeme napísať aj inak: ------------------------ Public Sub Umiestni() AppActivate ("AutoCAD LT") Urobí aktívnym okno AutoCADu LT SendKeys "_line{ENTER}0,0{ENTER}0,100{ENTER}100,100{ENTER}100,0{ENTER}_c{ENTER}", True pošle znaky na príkazový riadok AutoCADu LT End Sub ------------------------ viď: http://www.techsoft.sk/SkoleniaAutoCADInternetOld.php?idLekc ia=02&idDoplnok=A |
|
![]() |
|
Jarek ![]() Nováček ![]() Přihlášen: 19.čer.2005 Stav: Offline Bodů: 9 |
![]() |
Tak to je dost dobre! Dal jsem to do makra a funguje to. Mohl by jste mi ještě napsat, jak zaměním hodnotu 100,100 hodnotou z buňky - třeba A1? Předem děkuji.
|
|
![]() |
|
Jan Pajerchin ![]() Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Diskutér ![]() ![]() Přihlášen: 18.čvc.2005 Lokalita: Slovensko Používám: ZWCAD, AutoCAD Stav: Offline Bodů: 78 |
![]() |
Application.DDEExecute chanelNumber, " _line 0,0 0,100 " + Worksheets(1).Cells (1,1 ).Value + " 100,0 _c " kde Worksheets(1) - je list č.1 a Cells (1,1 ) je adresa prvej bunky v prvom stĺpci - teda A1
|
|
![]() |
|
de Forbes ![]() Nováček ![]() Přihlášen: 12.kvě.2005 Lokalita: Czech Republic Stav: Offline Bodů: 8 |
![]() |
Možná by bylo dobré napsat příkaz trochu čitelněji : Application.DDEExecute chanelNumber, " _line 0,0 0,100 " + Sheets(1).Range(A1 ) + " 100,0 _c " Sheets(1) je první list kolekce Sheet a Range(A1) znamená adresu buňky. Máte-li list excelu pojmenovaný například Vypocet, pak by měl řádek vypadat asi tak : Application.DDEExecute chanelNumber, " _line 0,0 0,100 " + Sheets("Vypocet").Range ("A1" ) + " 100,0 _c " Máte-li pojmenovanou přímo buňku například názvem Kota1, pak napište : Application.DDEExecute chanelNumber, " _line 0,0 0,100 " + Range("Kota1") + " 100,0 _c " |
|
![]() |
|
Jarek ![]() Nováček ![]() Přihlášen: 19.čer.2005 Stav: Offline Bodů: 9 |
![]() |
Teď už si poradím. Dík J.
|
|
![]() |
|
de Forbes ![]() Nováček ![]() Přihlášen: 12.kvě.2005 Lokalita: Czech Republic Stav: Offline Bodů: 8 |
![]() |
Já bych snad ještě něco dodal. Jestli potřebujete jenom jednoduché malé výkresy, pak je skoro lepší udělat je přímo v Excelu. Vytvoříte si mustr, kdy technický výkres je vpodstatě naformátovaná tabulka, na kterou připojíte bez problémů veškeré výpočty. My tento způsob používáme celkem úspěšně v naší firmě skoro čtyři roky.
|
|
![]() |
Pro technickou podporu CAD
kontaktujte Helpdesk
Odpovědět ![]() |
|
Přejít na fórum | Oprávnění fóra ![]() Nemůžete vytvářet nová témata v tomto fóru Nemůžete odpovídat na témata v tomto fóru Nemůžete vymazávat vaše příspěvky v tomto fóru Nemůžete upravovat vaše příspěvky v tomto fóru Nemůžete vytvářet ankety v tomto fóru Nemůžete hlasovat v anketách v tomto fóru |
Stránka byla vygenerována za 0,422 sekund.