Cách Đưa Excel Vào Cad: Hướng Dẫn Chi Tiết Từ A Đến Z

Mở Đầu

Trong môi trường thiết kế và kỹ thuật, việc kết hợp dữ liệu từ Excel vào AutoCAD (hoặc các phần mềm CAD khác) là một nhu cầu phổ biến. Excel thường được sử dụng để lưu trữ các bảng dữ liệu, danh sách vật liệu, kích thước, tọa độ, hay các thông tin tính toán phức tạp. Khi những dữ liệu này cần được hiển thị trực tiếp trên bản vẽ CAD, việc chuyển đổi thủ công sẽ gây tốn thời gian, dễ sai sót và không hiệu quả. Bài viết dưới đây sẽ cung cấp cho bạn một hướng dẫn chi tiết, từng bước một, để đưa dữ liệu Excel vào CAD một cách nhanh chóng, chính xác và linh hoạt.

1. Tổng Quan Về Các Phương Pháp Nhập Dữ Liệu Từ Excel Vào CAD

Có nhiều cách để đưa dữ liệu Excel vào CAD, tùy thuộc vào mục đích và mức độ phức tạp của dự án:

Phương phápƯu điểmNhược điểmKhi nào dùng
Copy‑Paste trực tiếpNhanh, không cần cài đặt thêmKhông giữ định dạng, không tự động cập nhậtKhi cần chèn một bảng tĩnh, không thay đổi
Data Link (Liên kết dữ liệu)Tự động cập nhật khi Excel thay đổiYêu cầu thiết lập phức tạp hơn, cần phiên bản AutoCAD hỗ trợKhi muốn bảng trong CAD luôn đồng bộ với Excel
Script / LISP / VBATự động hoá, tùy chỉnh caoCần kiến thức lập trìnhKhi cần chèn nhiều bảng, hoặc tự động tạo các đối tượng CAD dựa trên dữ liệu
Plugin / Add‑in (như “Excel2CAD”, “COBALT”)Giao diện thân thiện, tính năng mạnhPhải mua bản quyền hoặc tải phần mềm phụ trợKhi muốn giải pháp “đóng gói” và không muốn viết code
Export to DXF/CSV và ImportĐộc lập, không phụ thuộc vào ExcelCần chuyển đổi định dạng, mất một số thông tinKhi dữ liệu là tọa độ, đường polyline, hoặc bảng không cần định dạng

Bài viết sẽ tập trung vào ba phương pháp phổ biến và thực tế nhất: Copy‑Paste trực tiếp, Data Link, và Sử dụng VBA. Ngoài ra, phần cuối sẽ giới thiệu một số công cụ hỗ trợ bổ sung.

2. Chuẩn Bị Dữ Liệu Trên Excel

Trước khi đưa dữ liệu vào CAD, bạn cần chuẩn bị file Excel sao cho phù hợp:

2.1. Định Dạng Bảng

  • Tiêu đề cột: Đặt tiêu đề rõ ràng (VD: “Số TT”, “Kích thước”, “Độ dày”, “Mã vật liệu”). AutoCAD sẽ dùng tiêu đề này làm tiêu đề bảng khi chèn.
  • Không có ô trống: Tránh để các ô trống trong vùng dữ liệu sẽ được chèn, vì chúng có thể gây lỗi khi liên kết.
  • Định dạng số: Đảm bảo các cột số được định dạng đúng (ví dụ: “0.00” cho kích thước, “#,##0” cho số lượng) để khi hiển thị trong CAD không bị thay đổi.
  • Sử dụng một sheet duy nhất: Khi dùng Data Link, nên để dữ liệu cần chèn trong một sheet riêng, tránh dữ liệu lẫn lộn.

2.2. Đánh Dấu Vùng Dữ Liệu

  • Tên vùng (Named Range): Chọn vùng dữ liệu → “Formulas” → “Define Name” → đặt tên (VD: tbl_BOM). Khi chèn vào CAD, bạn có thể chọn tên này thay vì phải xác định phạm vi ô mỗi lần.
  • Lưu file: Đảm bảo file Excel được lưu dưới định dạng .xlsx hoặc .xls (đối với AutoCAD 2026 trở về trước, .xls có thể ổn hơn). Đặt file ở vị trí không thay đổi (đừng di chuyển hay đổi tên sau khi đã tạo liên kết).

2.3. Kiểm Tra Dữ Liệu

  • Kiểm tra lỗi: Đảm bảo không có công thức lỗi (#REF!, #DIV/0!). Khi AutoCAD đọc dữ liệu, các lỗi này sẽ hiển thị dưới dạng chuỗi lỗi, gây rối mắt.
  • Định dạng ngày tháng: Nếu có cột ngày tháng, cân nhắc chuyển sang dạng văn bản (yyyy-mm-dd) để tránh hiển thị sai định dạng trong CAD.

3. Cách Nhập Excel Vào CAD Bằng Copy‑Paste Trực Tiếp

3.1. Khi Nào Nên Dùng Phương Pháp Này

  • Khi chỉ cần chèn một bảng tĩnh, không cần cập nhật lại khi Excel thay đổi.
  • Khi muốn nhanh chóng chèn bảng vào bản vẽ mà không quan tâm tới việc đồng bộ.

3.2. Các Bước Thực Hiện

  1. Mở file Excel và chọn vùng dữ liệu cần chèn. Nhấn Ctrl + C (Copy).
  2. Mở AutoCAD và chuyển đến layout hoặc model space nơi bạn muốn chèn bảng.
  3. Gõ lệnh TABLE và nhấn Enter. Hộp thoại “Insert Table” xuất hiện.
  4. Trong hộp thoại, chọn “From a data link” → “Cancel” (để bỏ qua). Sau đó, trong phần “Insert Table” chọn “Paste”.
  5. Nhấn Enter để xác nhận vị trí chèn.
  6. Khi con trỏ hiển thị bảng, bấm chuột trái để đặt bảng tại vị trí mong muốn.
  7. Điều chỉnh kích thước cột, hàng bằng cách kéo các đường viền, hoặc vào Properties để thay đổi phông chữ, độ cao, màu sắc.

3.3. Lưu Ý Khi Sử Dụng Copy‑Paste

  • Định dạng: Các định dạng màu, viền trong Excel sẽ không được giữ nguyên. Bạn cần tự định dạng lại trong CAD.
  • Kích thước ô: AutoCAD tính kích thước ô dựa trên chiều cao phông chữ. Khi thay đổi phông chữ, kích thước ô có thể thay đổi.
  • Không tự động cập nhật: Nếu dữ liệu trong Excel thay đổi, bạn phải sao chép lại và dán lại bảng mới.

4. Sử Dụng Data Link (Liên Kết Dữ Liệu) Để Đồng Bộ Excel Và CAD

4.1. Giới Thiệu Về Data Link

Data Link là tính năng cho phép tạo một liên kết giữa một bảng trong AutoCAD và một file Excel. Khi dữ liệu trong Excel thay đổi, bạn chỉ cần cập nhật trong CAD (hoặc tự động cập nhật) để bảng trên bản vẽ luôn đồng bộ.

4.2. Các Yêu Cầu Cơ Bản

  • Phiên bản AutoCAD: Từ AutoCAD 2007 trở lên đều hỗ trợ Data Link.
  • File Excel: Nên dùng định dạng .xlsx. Đảm bảo file không được mở trong Excel khi AutoCAD đang cố gắng cập nhật (đôi khi sẽ gây lỗi “file in use”).

4.3. Các Bước Tạo Data Link

Bước 1: Mở Data Link Manager

  • Gõ lệnh TABLEDIT → Nhấn Enter.
  • Trong thanh công cụ “Table”, chọn “Data Link Manager” (hoặc gõ DATALINK).

Bước 2: Tạo Data Link Mới

  1. Nhấn “Create a New Excel Data Link”.
  2. Đặt tên cho liên kết (VD: DL_BOM).
  3. Click “Browse” và chọn file Excel đã chuẩn bị.
  4. Chọn Sheet và Named Range (nếu đã tạo). Nếu không, bạn có thể chọn “Range” và nhập địa chỉ ô (VD: A1:D20).
  5. Cấu hình tùy chọn:
  6. “Link”: Chọn “Link” để dữ liệu tự động cập nhật khi Excel thay đổi.
  7. “Embed”: Chọn “Embed” nếu muốn dữ liệu được nhúng cố định (tương tự copy‑paste) nhưng vẫn có khả năng chỉnh sửa trong CAD.
  8. Nhấn OK để lưu Data Link.

Bước 3: Chèn Bảng Dùng Data Link

  1. Gõ lệnh TABLE → Enter.
  2. Trong hộp thoại “Insert Table”, chọn “From a data link” → Nhấn “Select Data Link”.
  3. Chọn Data Link vừa tạo (DL_BOM) → OK.
  4. Xác định vị trí chèn bảng trên bản vẽ → Click để đặt.

Bước 4: Cập Nhật Dữ Liệu

  • Khi bạn thay đổi dữ liệu trong Excel, trở lại AutoCAD và nhấn Ctrl + Shift + S (hoặc lệnh TABLEUPDATE) để cập nhật bảng.
  • Nếu muốn AutoCAD tự động cập nhật, vào Options → User Preferences → “Update linked data automatically”.

4.4. Điều Chỉnh Bảng Sau Khi Chèn

Cách Đưa Excel Vào Cad
Cách Đưa Excel Vào Cad
  • Thay đổi kiểu hiển thị: Vào Properties → Text Style, Text Height, Background Color.
  • Thêm/ Xóa cột, hàng: Dùng TABLE → Insert Row/Column hoặc Delete Row/Column.
  • Định dạng số: Trong Properties, bạn có thể thiết lập Number Format cho từng cột (VD: 0.00, #,##0).

4.5. Lưu Ý Khi Sử Dụng Data Link

  • File Excel không được mở trong một ứng dụng khác khi AutoCAD đang cập nhật, nếu mở thì có thể gặp lỗi “File is locked”.
  • Di chuyển file Excel sau khi đã tạo Data Link sẽ làm mất liên kết. Nếu cần di chuyển, mở lại Data Link Manager và cập nhật đường dẫn.
  • Hiệu suất: Khi có hàng ngàn dòng, việc cập nhật tự động có thể làm chậm AutoCAD. Nên sử dụng “Embed” hoặc giảm số lượng dòng hiển thị.

5. Tự Động Hoá Với VBA: Nhập Dữ Liệu Excel Vào CAD Bằng Mã

5.1. Khi Nào Nên Dùng VBA

  • Khi bạn cần chèn nhiều bảng vào nhiều bản vẽ khác nhau.
  • Khi dữ liệu Excel không chỉ là bảng mà còn là tọa độ, đường polyline, text labels.
  • Khi muốn tự động tạo block, đánh số, định vị các đối tượng CAD dựa trên dữ liệu.

5.2. Chuẩn Bị Môi Trường

  1. Mở AutoCAD.
  2. Gõ lệnh VBAMAN → Enter. Trong VBA Manager, nhấn “Create New Project” → Đặt tên (VD: Excel2CAD).
  3. Trong cửa sổ VBA, chèn Module mới (Insert → Module).
  4. Đảm bảo đã Thêm Thư Viện Reference:
  5. Vào Tools → References.
  6. Tích vào Microsoft Excel xx.x Object Library (xx là phiên bản Office của bạn).
  7. Tích vào AutoCAD Type Library (được tự động thêm khi mở VBA trong AutoCAD).

5.3. Mã VBA Cơ Bản Để Nhập Bảng

Option Explicit Sub ImportExcelTable() Dim xlApp As Excel.Application Dim xlWb As Excel.Workbook Dim xlWs As Excel.Worksheet Dim rng As Excel.Range Dim i As Long, j As Long Dim tbl As AcadTable Dim insertPt As Variant '--- Đường dẫn tới file Excel Dim excelPath As String excelPath = "C:\Data\BOM.xlsx" '--- Mở Excel Set xlApp = New Excel.Application xlApp.Visible = False Set xlWb = xlApp.Workbooks.Open(excelPath, ReadOnly:=True) Set xlWs = xlWb.Worksheets("Sheet1") 'Tên sheet cần lấy '--- Xác định vùng dữ liệu (có tiêu đề ở hàng 1) Set rng = xlWs.Range("A1").CurrentRegion 'hoặc dùng Named Range '--- Điểm chèn bảng trong AutoCAD insertPt = ThisDrawing.Utility.GetPoint(, "Chọn điểm chèn bảng: ") '--- Tạo bảng Set tbl = ThisDrawing.ModelSpace.AddTable(insertPt, _ rng.Rows.Count, rng.Columns.Count, 2.5, 5) '2.5 = chiều cao hàng, 5 = chiều rộng cột '--- Định dạng tiêu đề tbl.SetTextHeight 0, 0, 2.5 tbl.SetTextStyle 0, 0, "Standard" '--- Đổ dữ liệu vào bảng For i = 1 To rng.Rows.Count For j = 1 To rng.Columns.Count tbl.SetText i - 1, j - 1, CStr(rng.Cells(i, j).Value) Next j Next i '--- Đóng Excel xlWb.Close False xlApp.Quit Set xlWs = Nothing Set xlWb = Nothing Set xlApp = Nothing MsgBox "Nhập bảng thành công!", vbInformation
End Sub

Giải Thích Mã

  • CurrentRegion: Tự động lấy vùng dữ liệu liên tục từ ô A1.
  • AddTable: Tạo bảng trong model space với số hàng, cột dựa trên vùng Excel.
  • SetText: Đặt nội dung từng ô.
  • GetPoint: Yêu cầu người dùng chọn điểm chèn trong bản vẽ.

5.4. Mở Rộng: Nhập Dữ Liệu Thành Đối Tượng CAD Khác

Giả sử Excel chứa tọa độ X, Y và Tên công trình. Bạn muốn tạo Text ở mỗi tọa độ:

Sub ImportPointsAsText() Dim xlApp As Excel.Application Dim xlWb As Excel.Workbook Dim xlWs As Excel.Worksheet Dim i As Long, lastRow As Long Dim pt As Variant Dim txt As AcadText Dim excelPath As String excelPath = "C:\Data\Points.xlsx" Set xlApp = New Excel.Application Set xlWb = xlApp.Workbooks.Open(excelPath, ReadOnly:=True) Set xlWs = xlWb.Worksheets(1) lastRow = xlWs.Cells(xlWs.Rows.Count, 1).End(xlUp).Row 'Giả sử cột A là X, B là Y, C là Tên For i = 2 To lastRow 'Bắt đầu từ dòng 2 (bỏ tiêu đề) pt = ThisDrawing.Utility.TranslateCoordinates( _ Array(xlWs.Cells(i, 1).Value, xlWs.Cells(i, 2).Value, 0), _ acModelSpace, acWorld) Set txt = ThisDrawing.ModelSpace.AddText(xlWs.Cells(i, 3).Value, pt, 2.5) txt.Height = 2.5 Next i xlWb.Close False xlApp.Quit Set xlWs = Nothing: Set xlWb = Nothing: Set xlApp = Nothing MsgBox "Tạo Text từ Excel hoàn tất!", vbInformation
End Sub

5.5. Tips Khi Sử Dụng VBA

  • Xử lý lỗi: Thêm On Error GoTo ErrHandler để tránh treo AutoCAD nếu Excel không mở được.
  • Hiệu suất: Khi dữ liệu lớn, tắt ScreenUpdating của Excel (xlApp.ScreenUpdating = False) và Application.Zoom của AutoCAD (ThisDrawing.Application.ZoomAll sau khi chèn) để giảm thời gian.
  • Định dạng: Bạn có thể gán TextStyle, Color, Layer cho các đối tượng ngay trong vòng lặp.
  • Lưu trữ macro: Sau khi viết xong, lưu thành file .dvb hoặc .lsp (nếu dùng LISP) để chia sẻ với đồng nghiệp.

6. Các Công Cụ Bổ Sung Hữu Ích

Nếu bạn không muốn viết code, có một số phần mềm và plugin hỗ trợ nhập Excel vào CAD:

Công cụMô tảGiáĐánh giá
Excel2CAD (by CADStudio)Cho phép kéo‑thả file Excel, tự động chuyển thành Table hoặc Block.199 USD (phiên bản trial 30 ngày)Dễ dùng, hỗ trợ cả DWG và DXF
COBALT (AutoCAD Plugin)Tích hợp trong AutoCAD, hỗ trợ Data Link nâng cao, đồng bộ đa sheet.Miễn phí (có bản pro trả phí)Giao diện thân thiện, tích hợp mạnh
CADWorxThêm tính năng “Import Excel Data” cho các bản vẽ cơ khí.Thuộc gói CADWorxPhù hợp cho ngành cơ khí, tự động tạo BOM
Autodesk Inventor (lệnh iLogic)Dùng iLogic để đọc Excel và tạo mô hình/đánh dấu.Được tích hợp trong InventorThích hợp cho thiết kế 3D, không phải DWG thuần

Bạn có thể thử nghiệm với COBALT vì nó miễn phí và tích hợp trực tiếp trong AutoCAD.

7. Các Lỗi Thường Gặp Và Cách Khắc Phục

LỗiNguyên nhânGiải pháp
“File is locked” khi cập nhật Data LinkFile Excel đang mở trong Excel hoặc được mở bởi một ứng dụng khác.Đóng Excel, hoặc bật tùy chọn “Read‑only” khi tạo Data Link.
Bảng hiển thị #REF!Công thức trong Excel trả về lỗi.Kiểm tra lại công thức, hoặc chuyển công thức thành giá trị tĩnh (Copy → Paste Special → Values).
Kích thước ô quá lớn/nhỏPhông chữ hoặc Text Height không đồng nhất.Đặt Text Height chung cho toàn bộ bảng trong CAD (Properties → Text Height).
Không cập nhật tự độngTùy chọn “Update linked data automatically” tắt.Vào Options → User Preferences → bật tùy chọn.
Vị trí bảng saiKhi chèn Data Link, không chọn đúng điểm gốc.Sử dụng lệnh TABLEEDIT → “Move” để di chuyển bảng.
Mất định dạng ngày thángAutoCAD không nhận dạng định dạng ngày.Chuyển cột ngày thành văn bản trong Excel (yyyy-mm-dd).

8. Thực Hành: Dự Án Mini – Tạo Bảng BOM (Bill of Materials) Tự Động

8.1. Mô tả dự án

  • Mục tiêu: Từ file Excel BOM.xlsx chứa danh sách vật liệu, tạo bảng BOM trong AutoCAD, đồng thời tạo các block “Material Tag” tại vị trí được chỉ định trong bản vẽ.
  • Dữ liệu Excel:
A (Mã)B (Tên)C (Số Lượng)D (Đơn Giá)E (X)F (Y)
M001Ống PVC1215000015002500
M002Cầu trượt435000020003000
………………

8.2. Các bước thực hiện (sử dụng VBA)

Sub CreateBOMAndTags() Dim xlApp As Excel.Application, xlWb As Excel.Workbook, xlWs As Excel.Worksheet Dim i As Long, lastRow As Long Dim insertPt As Variant, tbl As AcadTable, txt As AcadText Dim excelPath As String excelPath = "C:\Project\BOM.xlsx" '--- Mở Excel Set xlApp = New Excel.Application Set xlWb = xlApp.Workbooks.Open(excelPath, ReadOnly:=True) Set xlWs = xlWb.Worksheets(1) lastRow = xlWs.Cells(xlWs.Rows.Count, 1).End(xlUp).Row '--- Nhập bảng BOM insertPt = ThisDrawing.Utility.GetPoint(, "Chọn điểm gốc cho bảng BOM: ") Set tbl = ThisDrawing.ModelSpace.AddTable(insertPt, lastRow, 4, 2.5, 20) '4 cột: Mã, Tên, Số Lượng, Đơn Giá 'Tiêu đề tbl.SetText 0, 0, "Mã" tbl.SetText 0, 1, "Tên" tbl.SetText 0, 2, "Số Lượng" tbl.SetText 0, 3, "Đơn Giá (VND)" 'Định dạng tiêu đề tbl.SetTextHeight 0, 0, 3 tbl.SetTextHeight 0, 1, 3 tbl.SetTextHeight 0, 2, 3 tbl.SetTextHeight 0, 3, 3 tbl.SetAlignment 0, 0, acAlignmentCenter tbl.SetAlignment 0, 1, acAlignmentCenter tbl.SetAlignment 0, 2, acAlignmentCenter tbl.SetAlignment 0, 3, acAlignmentCenter 'Dòng dữ liệu For i = 2 To lastRow tbl.SetText i - 1, 0, CStr(xlWs.Cells(i, 1).Value) 'Mã tbl.SetText i - 1, 1, CStr(xlWs.Cells(i, 2).Value) 'Tên tbl.SetText i - 1, 2, CStr(xlWs.Cells(i, 3).Value) 'Số Lượng tbl.SetText i - 1, 3, Format(xlWs.Cells(i, 4).Value, "#,##0") 'Đơn Giá Next i '--- Tạo Material Tag cho từng vật liệu For i = 2 To lastRow Dim pt(0 To 2) As Double pt(0) = xlWs.Cells(i, 5).Value 'X pt(1) = xlWs.Cells(i, 6).Value 'Y pt(2) = 0 Set txt = ThisDrawing.ModelSpace.AddText( _ xlWs.Cells(i, 1).Value & " - " & xlWs.Cells(i, 2).Value, _ pt, 2.5) txt.Layer = "MaterialTag" txt.Color = acBlue Next i '--- Dọn dẹp xlWb.Close False xlApp.Quit Set xlWs = Nothing: Set xlWb = Nothing: Set xlApp = Nothing MsgBox "BOM và Material Tag đã được tạo!", vbInformation
End Sub

Kết quả

  • Bảng BOM xuất hiện ở vị trí người dùng chọn, với tiêu đề in đậm, cột giá được định dạng có dấu phẩy.
  • Các “Material Tag” (văn bản) được đặt tại tọa độ X, Y được cung cấp trong Excel, trên layer MaterialTag, màu xanh dương, giúp người dùng nhanh chóng xác định vị trí vật liệu trên bản vẽ.

8.3. Mở Rộng

  • Tự động tạo block: Thay vì Text, bạn có thể dùng AddBlockReference để chèn một block đã định nghĩa (VD: block “TagMaterial”) và truyền thuộc tính (attribute) là mã và tên vật liệu.
  • Tự động tạo bảng trong Layout: Thay vì ModelSpace, dùng ThisDrawing.PaperSpace.AddTable để đặt trên layout giấy.
  • Gửi Email báo cáo: Sử dụng Outlook Object Model trong VBA để gửi bản vẽ PDF kèm bảng BOM sau khi hoàn thành.

9. Kết Luận

Việc đưa Excel vào CAD không còn là một công việc “phức tạp” nếu bạn nắm rõ các công cụ và quy trình. Từ cách Copy‑Paste đơn giản, tới Data Link mạnh mẽ, cho tới VBA tự động hoá, mỗi phương pháp đều có ưu nhược điểm riêng và phù hợp với những tình huống khác nhau.

  • Nếu chỉ cần một bảng tĩnh: Copy‑Paste là đủ.
  • Nếu cần đồng bộ dữ liệu: Data Link là lựa chọn tiêu chuẩn, hỗ trợ cập nhật tự động.
  • Nếu muốn tự động hoá toàn bộ quy trình (chèn bảng, tạo block, ghi chú, v.v…): VBA (hoặc LISP) sẽ là “công cụ vũ khí” tối ưu.

Bạn cũng không nên bỏ qua các công cụ bên thứ ba như COBALT, Excel2CAD, hoặc iLogic nếu muốn có giao diện đồ họa thân thiện và giảm thời gian học lập trình.

Hy vọng bài viết đã cung cấp cho bạn một “bản đồ” chi tiết, từ chuẩn bị dữ liệu Excel, các bước thực hiện, mã mẫu VBA, cho tới các lưu ý và khắc phục lỗi. Hãy áp dụng ngay vào dự án thực tế của mình, và bạn sẽ thấy quá trình thiết kế, tính toán và trình bày bản vẽ trở nên mượt mà, hiệu quả hơn rất nhiều.

Chúc bạn thành công!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận