Ranking

Popularna zawartość

Zawartość, która uzyskała najwyższe oceny od 12/22/25 w Odpowiedzi

  1. To ja proponuję taki prosty skrypt. Działa tak, że oddziela człon sprzed "_" i wpisuje do komórki Nr arkusza a resztę do nazwy. Jak "_" nie znajdzie to wpisuje po prostu aktualne LP. Tabela będzie wyglądać jak na screenie TableOfLayouts.zelx
    4 punkty
  2. Do wyboru do koloru, ja zrobiłem dla Ciebie skrypt ListaArkuszy.lsp Nazwy arkuszy są formatowane, znak "_" zmieniany jest na spację. Narzędzie wywołaj poleceniem ListaArkuszy
    2 punkty
  3. Najbliżej mi do rozwiązania Pana ktomaszewski, nie mniej wszystkim Państwu dziękuję za pomoc !
    1 punkt
  4. kojacek

    Grupowa zmiana nazw bloków

    To problem stosunkowo prosty do rozwiązania, (oczywiście) za pomocą LISP-a. Poniżej krótki uproszczony kod programu. Wcześniej trzeba załadować bibliotekę CADPL-Pack-v1.lsp (https://kojacek.wordpress.com/2015/11/04/cadpl-pack/) Potem należy załadować dwie poniższe funkcje: ; -------------------------------------------------------------------- ; ; by kojacek 2025 (https://kojacek.wordpress.com) ; ; -------------------------------------------------------------------- ; (defun C:RENBLO (/ %o %n %l %i) (if (setq %l (cd:SYS_CollList "BLOCK" (+ 1 2 4 8))) (progn (if (and (setq %o (getstring T "\nPodaj początek nazwy bloku zmienianego:")) (setq %n (getstring T "\nPodaj przedrostek nowej nazwy:")) ) (if (snvalid %n 1) (progn (setq %i (strlen %o)) (cd:SYS_UndoBegin) (foreach % %l (if (wcmatch % (strcat %o "*")) (jk:BLK_Rename % (strcat %n (substr % (1+ %i) 300)) ) ) ) (cd:SYS_UndoEnd) ) (princ "\nNieprawidłowy ciąg znaków.") ) ) ) (princ "\nW rysunku nie ma bloków.") ) (princ) ) ; -------------------------------------------------------------------- ; (defun jk:BLK_Rename (OldName NewName / ) (if (and (snvalid NewName 1) (not (tblobjname "BLOCK" NewName)) ) (if (tblobjname "BLOCK" OldName) (vla-put-Name (vla-item (cd:ACX_Blocks) OldName) NewName ) ) ) ) ; -------------------------------------------------------------------- ; Następnie wywołać polecenie RENBLO, podać ciąg znaków początku nazwy bloków do zmiany, a potem ciąg znaków którymi będzie on zamieniony... Przykładowo: "OKNO_podwojne - O3_G_Balkonowe" zamieniasz na "0-OK" co ilustrują poniższe obrazy: Przed: oraz po zmianie przez RENBLO:
    1 punkt
  5. Co rozumiesz przez "zestawić listę layoutów"? Jeśli chodzi o same nazwy layoutów, funkcja AutoLISP o nazwie layoutlist załatwia sprawę. Przykładowo: (layoutlist) -> ("PIETRO 1-4" "PRZEKROJE")
    1 punkt
Ten Ranking jest ustawiony na Warszawa/GMT+01:00