Chuyển đến nội dung
Diễn đàn CADViet
Duong Nhat Duy

Lisp thống kê Block Att, Dynamic, xuất danh mục bản vẽ (AutoCAD Table)

Các bài được khuyến nghị

20 giờ trước, Lio__95 đã nói:

Hay quá người anh của em :-D 
Anh vẫn làm nghề là em yên tâm rùi =)))

Người em của anh, dạo này e trôi dạt phương trời nào rồi :)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Vào lúc 2/1/2025 tại 09:00, Duong Nhat Duy đã nói:

Người em của anh, dạo này e trôi dạt phương trời nào rồi :)

Vẫn nay đây mai đó thôi anh. Ra thêm nhiều cờ líp hay anh nhé =))

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Vào lúc 5/8/2024 tại 17:18, Duong Nhat Duy đã nói:

Thống kê tất cả giá trị Parameter trong nhiều Block

 

Bạn ơi ống cấp điện nguồn bằng nhựa trắng PVC, vẽ nét Pline có cộng được không

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
4 giờ trước, NGUYENBINH213209 đã nói:

Bạn ơi ống cấp điện nguồn bằng nhựa trắng PVC, vẽ nét Pline có cộng được không

Để tính toán hoặc thống kê Pline bạn tham khảo lisp này nhé:

 

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Cảm ơn bạn, lisp dùng rất tiện cho việc đếm số lượng các công trình MEP. Nhưng mình bên cầu đường, bạn tư vấn một số lissp dùng cho cầu đường nhé.

image.png.c0b5d65dda4d2022cdfe285615d2beaf.png

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
35 phút trước, NGUYENBINH213209 đã nói:

Cảm ơn bạn, lisp dùng rất tiện cho việc đếm số lượng các công trình MEP. Nhưng mình bên cầu đường, bạn tư vấn một số lisp dùng cho cầu đường nhé.

Mình cũng chuyên ngành cầu đường, và tất cả các lisp mình viết ra đều phục vụ công việc. Bạn tham khảo trong này nhé:

https://www.cadviet.com/forum/index.php?app=core&module=members&controller=profile&id=167212&do=content&type=forums_topic&change_section=1

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

https://www.mediafire.com/file/oppke3pwmejeksr/MB-TD_TNM_CCN_TN_-_Copy.dwg/file

Duong Nhat Duy, mình có cái file cad (hơn 1,8mb) đã dùng lisp  thống kế hố ga ra các loại bảng thống kê. Bạn cho mình hỏi làm sao xuất excel được vậy.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
10 giờ trước, NGUYENBINH213209 đã nói:

https://www.mediafire.com/file/oppke3pwmejeksr/MB-TD_TNM_CCN_TN_-_Copy.dwg/file

Duong Nhat Duy, mình có cái file cad (hơn 1,8mb) đã dùng lisp  thống kế hố ga ra các loại bảng thống kê. Bạn cho mình hỏi làm sao xuất excel được vậy.

Khi muốn xuất tất cả thông tin trong Block Att ra excel thì tốt nhất bạn nên dùng lệnh ATTOUT của cad luôn nhé ! Còn muốn xuất 1 bảng bất kỳ (AutoCAD Table) ra Excel thì bạn chuột phải vào bảng rồi chọn Export là được.

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Vào lúc 5/8/2024 tại 17:18, Duong Nhat Duy đã nói:

Gửi đến các bạn 1 lisp Thống kê Block Att, Dynamic, xuất ra AutoCAD Table, ứng dụng để thống kê danh mục bản vẽ, thống kê khối lượng, định vị tọa độ, ...

 

Công dụng:

- Thống kê Block Att, Dynamic, xuất bảng AutoCAD

- Có thể thống kê nhiều loại Block, nhiều thuộc tính cùng lúc

- Có thể thống kê Block bằng cách chọn thủ công hoặc tự động chọn toàn bộ bản vẽ (cả Model và Layout)

- Có thể hiệu chỉnh, tính toán các nội dung thống kê. Ví dụ: thực hiện các phép tính cơ bản như + - * /, thêm hàng tính tổng, ...

 

Hạn chế:

- Không thống kê được nhiều bản vẽ cad cùng lúc (vì do trình độ gà nên mình không viết được)

- Không xuất được sang Excel, hiện tại các bạn có thể Export từ bảng AutoCAD ra file .csv mở bằng Excel, tuy nhiên sẽ bị lỗi dấu Tiếng Việt (nếu có) =>Nhờ các Pro tư vấn giúp mình vấn đề này

 

Coming soon (tính năng sẽ phát triển):

- Thống kê danh mục bản vẽ từ các Text rời rạc (không nằm trong Block Att khung tên)

 

Tên lệnh:

   ATL - Thiết lập bảng

   ATK - Thống kê chi tiết Block Att (sau khi đã thiết lập bảng)

   AT1 - Thống kê nhanh Block Att

   DY1 - Thống kê nhanh Block Dynamic

   ATC - Đếm số lượng Att

   DYC - Đếm số lượng Parameter

   BLC - Đếm số lượng Block

   NDC - Đếm nội dung Text, Att

   ATDY1 - Gộp của 2 lệnh AT1 và DY1

   ATDYC - Gộp của 2 lệnh ATC và DYC

(Các lệnh thống kê khác lệnh ATK có thể dùng ngay mà không cần ATL-thiết lập bảng, các thông số như cao chữ được lấy theo mặc định, có thể chỉnh sửa trong ATL)

 

AT1 - Thống kê nhanh Block Att

Thống kê tất cả giá trị Att trong nhiều Block

AT1.png.10836e9bf3990199851f07be44ec22bb.png

 

ATC - Thống kê số lượng Att trong Block Att

Thống kê tương tự lệnh AT1 nhưng gộp các hàng có giá trị giống nhau đồng thời đếm số lượngATC.png.a135b0399858bb86a4f2ce5e91d2d978.png

 

DY1 - Thống kê nhanh Block Dynamic

Thống kê tất cả giá trị Parameter trong nhiều Block

DY1.png.5f7f90f23e93c9f02b467814f920dc4b.png

 

DYC - Thống kê số lượng Parameter trong Block Dynamic

Thống kê tương tự lệnh DY1 nhưng gộp các hàng có giá trị giống nhau đồng thời đếm số lượng

DYC.jpg.330b937f9ee64dd4254120b8775c252d.jpg

 

BLC - Thống kê số lượng Block

Bao gồm cả Block thường, Block Att và Block động

Đặc biệt có thể thống kê theo trạng thái (Visibility) của block động

BLC.png.d3cde8a81f124ddced4880846489a366.png

 

NDC - Đếm nội dung Text, Att

Đếm số lượng nội dung Text, Att (tất cả Att, không phân biệt tag)

 

ATDY1 - Thống kê nhanh Block Att và Dynamic

Thống kê cả Att và Parameter trong Block (gộp của 2 lệnh AT1 và DY1)

 

ATDYC - Thống kê số lượng Att và Parameter

Thống kê các Att và Parameter chỉ định trong Block đồng thời đếm số lượng (gộp của 2 lệnh ATC và DYC)

 

ATL - Thiết lập bảng thống kê

ATL1.png.10241e9f4792e2ae9b25a58bf80c109b.png

Cơ bản gồm 2 bước bắt buộc:

- B1: Khai báo Block Att

- B2: Nhập nội dung hiển thị của từng cột

Cách nhập (bấm nút Hướng dẫn cách nhập Tag)

   + Nhập thủ công tên nhãn của Att (Tag) hoặc copy từ bảng danh sách Tag bên trên

   + Nhập %%STT để định nghĩa số thứ tự tăng dần

   + Nhập %%NAME để định nghĩa tên Block

   + Nhập %%BLK để tạo ảnh Block

   + Nhập %%X, %%Y, %%Z để định nghĩa tọa độ X, Y, Z của Block

   + Nhập %%+, %%-, %%*, %%/ để thực hiện các phép tính + - / * (phép tính được thực hiện từ trái qua phải, không phân biệt, không ưu tiên * / trước + - sau)

   + Nhập %%sothuc để định nghĩa số thực

Ví dụ 1 phép tính với cả Tag (biến) và số thực (hằng số): TAG  %%+  %%2  %%*  %%3.5, tương đương: (TAG+2)*3.5

   + Nhập "noidung" để định nghĩa các nội dung cố định, ví dụ: "A2", "A3", "Mã dự án",...

   + Để kết hợp nhiều Tag, đặt tên Tag giữa dấu cách, ví dụ: TAG1 TAG2 hoặc MADUAN " - " MABANVE

Lưu ý: Bắt buộc phải nhập 2 ký tự %% đằng trước vì nhập STT, 123, hay kể cả + - sẽ trùng với tên Tag

- Các cài đặt khác:

   + Cài đặt thông số bảng: Style, cao chữ, kích thước hàng cột, thêm bớt cột

   + Có thể thêm hàng tính tổng

   + Có thể lưu cài đặt ra file .txt (nút Save) hoặc nhận cài đặt từ file .txt có sẵn (nút Load). Có thể tạo nhiều file cài đặt khác nhau ví dụ: Thong ke Block nut giao.txt, Thong ke Block tem dat.txt, ...

- Bấm OK để hoàn tất bước cài đặt (chưa phải là bước thống kê nhé)

 

ATK - Thống kê chi tiết Block Att

ATK.png.86a1915064d11199aa965d1b843d4de5.png

- B1: Thiết lập chọn, sắp xếp. Ví dụ:

   + Có thể chọn Block thủ công hoặc chọn cả bản vẽ (bao gồm cả Model và Layout)

   + Có thể chọn các Block khác tên để thống kê (ví dụ: Block Khung tên A3 và A4 có chung tên Tag)

   + Thứ tự sắp xếp: 1 trong những cách sau

       Thống kê theo thứ tự chọn

       Thống kê theo quy tắc trên->dưới, trái->phải. Lưu ý nhập sai số vì các Block khung tên nhìn bằng mắt thường có thể ngang nhau nhưng thực tế có thể lệch nhau vài đơn vị cad (nên nhập = cao chữ)

       Thống kê theo nội dung cột. Lưu ý: sắp xếp theo mã bản vẽ chứ không sắp xếp theo số thứ tự, ví dụ: Số báo danh từ Tên thí sinh mà ra chứ Số báo danh không từ Số báo danh mà ra, vô nghĩa

- B2: Chọn điểm xuất bảng thống kê, hết !

 

Một số ví dụ về thống kê chi tiết (chỉ lệnh ATK mới làm được):

- Thống kê danh mục bản vẽ:

1136140813_ATK(1).png.8bf2faad7a6c9ac8b825679751d50e13.png

 

- Thống kê, tính tổng khối lượng:

Cột Htb không có sẵn trong Block tem nhưng có thể được tính toán từ các cột có sẵn

88479811_ATK(2).png.a98dc9432c6942566b3596475e90c9ef.png

 

- Thống kê tọa độ Block:

Nội dung Tag nhập %%X và %%Y để hiển thị tọa độ Block

167836702_ATK(3).png.d2dc56fce71c801ea79def6ef84db3c0.png

 

Bonus

Nếu có 1 đề bài thống kê nào mà bạn chưa biết phải thiết lập như thế nào, hãy gửi file cad lên đây, mình sẽ gửi lại bạn file .txt thiết lập sẵn, bạn chỉ cần nhập ATL, chọn nút Load và chọn file .txt, lisp sẽ tự cài đặt theo file .txt đó (Có thể đổi tên file .txt thành tên bất kỳ).

 

Change log

- v1.00 (05/08/24): Phiên bản đầu tiên

- v1.01 (26/08/24): Thêm lệnh BLC, ATC

- v1.02 (30/09/24): Sửa lỗi khi tên Block có dấu tiếng Việt

- v1.03 (14/10/24): Lệnh ATL: Sửa lỗi khi khai báo Block chứa hơn 10 Att

- v1.04 (25/10/24): Sửa lỗi khi tồn tại cột trống (không có nội dung)

- v1.05 (04/11/24): Thêm lệnh NDC

- v1.06 (02/01/25): Thêm lệnh DYC, ATDY1, ATDYC

 

Link download:

- File lisp: https://drive.google.com/drive/u/1/folders/1wEGtQeuCU3jjl9mu07upkiC9quuRx4jH

- File cad để test: File CAD test.dwg

 

Chúc các bạn thành công :)))

Cảm ơn A Duy, lisp rất hay. A cho e hỏi tí, lisp ATL, ATK có thể xuất danh mục nếu att text tên bản vẽ có multiple line ko và có thể bảng quy định số dòng hiển thị ko (ví dụ có 42 hàng -> bảng có 15 hàng và chia thành 3 cột). E cảm ơn nhiều nhé!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Vào lúc 25/1/2025 tại 08:44, Le Quang Arc đã nói:

Cảm ơn A Duy, lisp rất hay. A cho e hỏi tí, lisp ATL, ATK có thể xuất danh mục nếu att text tên bản vẽ có multiple line ko và có thể bảng quy định số dòng hiển thị ko (ví dụ có 42 hàng -> bảng có 15 hàng và chia thành 3 cột). E cảm ơn nhiều nhé!

Cái này quá phức tạp và cá nhân, bạn vui lòng làm thủ công nhé !

 

Vào lúc 12/3/2025 tại 20:07, Lin đã nói:

Anh Duy có lisp nào thống kê Mline theo từng Mline Scale không ạ

Lisp này chỉ thống kê Block chứ không liên quan gì đến các đối tượng khác bạn nhé, bạn vui lòng search topic khác trên forum !

 

1 giờ trước, hmai57 đã nói:

lisp của anh rất hay ạ, em có thể cài đặt để thống kê theo cột này không ạ, ví dụ G4Q sắp xếp hết G4Q rồi mới đến RLL ạ, mong anh giải đáp ạ!

Khi muốn sắp xếp thì bắt buộc phải dùng ATL và ATK (như hình là bạn đang dùng AT1, lệnh này thì không hỗ trợ sắp xếp), bạn đọc kỹ lại hướng dẫn, mình đã nói rõ cả phần khai báo và sắp xếp theo cột rồi !

  • Like 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Vào lúc 19/3/2025 tại 11:22, Duong Nhat Duy đã nói:

Cái này quá phức tạp và cá nhân, bạn vui lòng làm thủ công nhé !

 

Lisp này chỉ thống kê Block chứ không liên quan gì đến các đối tượng khác bạn nhé, bạn vui lòng search topic khác trên forum !

 

Khi muốn sắp xếp thì bắt buộc phải dùng ATL và ATK (như hình là bạn đang dùng AT1, lệnh này thì không hỗ trợ sắp xếp), bạn đọc kỹ lại hướng dẫn, mình đã nói rõ cả phần khai báo và sắp xếp theo cột rồi !

Lisp rất hay có thể thống kê đc cả text của leader tuy nhiên với Multileader lại không thống kê được, nhờ bạn bổ sung thêm việc thống kê text của Multileader được không? Cảm ơn bạn!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

×