Ứng dụng Automation Của VBA Trong Việc Trao đổi Dữ Liệu Giữa Excel Với Autocad

Liên hệ QC
Status
Không mở trả lời sau này.

PhanTuHuong

VBA & VB.NET for Excel & AutoCad
Thành viên danh dự
Tham gia
13/6/06
Bài viết
7,120
Được thích
24,279
ỨNG DỤNG CHỨC NĂNG AUTOMATION (TỰ ĐỘNG HOÁ) CỦA VBA TRONG VIỆC TRAO ĐỔI DỮ LIỆU GIỮA EXCEL VỚI AUTOCAD


Tóm tắt: Bài báo này trình bày khả năng tự động hoá trao đổi dữ liệu giữa Excel và AutoCad bởi chức năng Automation của ngôn ngữ lập trình VBA (Visual Basic for Applications) sẵn có trong chúng. Ứng dụng hiệu quả này không chỉ trong lĩnh vực Địa chất công trình (ĐCCT) mà còn hiệu quả đối với các bài toán kỹ thuật khác hay sử dụng Excel và AutoCad, rút ngắn đáng kể thời gian thực hiện và đảm bảo kết quả chính xác.

1. Đặt vấn đề

VBA là một ngôn ngữ lập trình hướng đối tượng có khả năng phát triển ứng dụng mạnh mẽ với nhiều tính năng phong phú. VBA được tích hợp trong môi trường Office và AutoCad với các chức năng gần tương tự nhau (hình 1, 2).

Hinh1.jpg

Hình 1: Cửa sổ VBA trong Excel

Hinh2.jpg

Hình 2: Cửa sổ VBA trong AutoCad

Hinh3.jpg

Hình 3: Giới thiệu công nghệ COM trong trang web của tập đoàn Microsoft​

Chức năng Automation của VBA là một dạng công nghệ COM (Component Object Model) trong gia đình Microsoft Window, cho phép giao tiếp (hay truyền thông) giữa các phần mềm với nhau. COM là kiến trúc lập trình được phát triển bởi Microsoft, mục đích là tạo ra một công nghệ chuẩn cho phép xây dựng chương trình theo mô hình lắp ghép (component) hay sử dụng các sản phẩm đã được hoàn thiện từ trước theo tiêu chuẩn COM. Automation cho phép một ứng dụng có thể điều khiển các đối tượng trong ứng dụng khác, hoặc gọi các đối tượng mà có thể thực thi bằng những tập lệnh. Ví dụ như có thể điều khiển Excel từ Word hay AutoCad (và ngược lại) giống như thực hiện trực tiếp trên ứng dụng đó.

Hinh45.jpg


Tại sao tôi chỉ đề cập việc trao đổi dữ liệu giữa hai phần mềm Excel và AutoCad? Bởi vì Excel là phần mềm chuyên về bảng tính và biểu đồ với khả năng tính toán, xử lý dữ liệu tuyệt vời nhất hiện nay nhưng lại yếu về phần đồ hoạ. AutoCad lại là phần mềm vào hàng đầu lĩnh vực đồ hoạ nhưng lại yếu về khả năng tính toán, việc xử lý và quản lý dữ liệu bị hạn chế. Trong khi đó, cả hai phần mềm này đều được sử dụng rộng rãi trong các ngành kỹ thuật, đặc biệt là trong ngành địa chất, trắc địa, mỏ, xây dựng, giao thông, kiến trúc, chế tạo máy,... Việc tạo mối liên kết giữa hai phần mềm trên sẽ khắc phục những mặt hạn chế của chúng, nâng cao khả năng khai thác các phần mềm đó trong chuyên môn. Bản thân hai phần mềm trên đều được tích hợp ngôn ngữ lập trình ứng dụng VBA, một dạng ngôn ngữ lập trình Visual Basic (VB) dễ học, rất phổ biến và đang được giảng dạy trong môn Tin học đại cương của trường Đại học Mỏ Địa chất.
Thông thường, bài toán trong lĩnh vực kỹ thuật được giải quyết theo 3 bước như hình 5.

Như trong hình 5, các bước (1), (2) thực hiện trong Excel, còn bước (3) sẽ thực hiện trong AutoCad. Bài toán vẽ hình trụ hố khoan, mặt cắt ĐCCT hay bài toán thiết kế khoan nổ mìn (lĩnh vực khai thác mỏ), vẽ bình đồ trắc dọc (lĩnh vực đo đạc),... có thể sử dụng mô hình trên. Nếu chỉ sử dụng các công cụ sẵn có hoặc lập trình VBA (riêng từng ứng dụng) thì việc tự động hoá chỉ có thể đạt được một phần, còn từ bước (2) sang bước (3) không thực hiện được. Đặc biệt là những bài toán có số lượng dữ liệu lớn sẽ gây vất vả và tốn thời gian để thực hiện công việc trên, trong khi đó sẽ rất đơn giản khi dùng chức năng Automation. Còn nếu chỉ sử dụng VBA AutoCad, VB6, VB.NET, C,... điều khiển AutoCad để thực hiện sẽ phức tạp vì phải xây dựng toàn bộ chương trình tính theo ngôn ngữ lập trình đó, điều này hoàn toàn không dễ thực hiện.

2. Kết quả nghiên cứu

Trong khuôn khổ bài báo, tôi lấy ví dụ về nội dung chính của chương trình lập hình trụ hố khoan. Để thực hiện được chương trình này, cần phải hiểu được các đối tượng cùng với thuộc tính, phương thức của chúng trong Excel và AutoCad. Công việc xây dựng chương trình được thực hiện đồng thời trong VBA Excel và VBA AutoCad để có sự so sánh trong từng ứng dụng. Các bước xây dựng chương trình như sau:
 
Lần chỉnh sửa cuối:
 Bước 1: Khai báo tham chiếu đến thư viện ứng dụng

Đầu tiên, cần phải khai báo tham chiếu đến thư viện ứng dụng cần thực hiện bằng cách chọn References trong menu Tools của cửa sổ VBA (hình 1, 2) theo:
- Với VBA Excel: chọn AutoCad 2004 Type Library (hình 6)
- Với VBA AutoCad: chọn Microsoft Excel 11 Object Library (hình 7)

Hinh6.jpg

Hình 6: Tham chiếu tới thư viện AutoCad từ VBA trong Excel​

Giá trị số trong các tham chiếu trên phụ thuộc vào phiên bản Office và AutoCad nên có thể khác nhau giữa các máy tính, ví dụ trên sử dụng AutoCad 2004 và Office 2003. Khi đã khai báo tham chiếu như trên, thư viện đối tượng Excel (hoặc AutoCad) dễ dàng được hiển thị trong cửa sổ VBA AutoCad (hoặc Excel) bởi chức năng trợ giúp Auto List Members. Công việc này rất hữu ích giúp chúng ta dễ dàng điều khiển ứng dụng này từ VBA của ứng dụng khác giống như thực hiện từ chính bản thân chúng.

 Bước 2: Xây dựng bảng nhập dữ liệu đầu vào trong Excel

Số liệu nhập thực hiện trên bảng tính Excel bao gồm số hiệu, độ sâu, tên các lớp đất đá cùng với ký hiệu địa tầng, tỷ lệ đứng,...(hình 8). Ngoài ra, có thể sử dụng các chức năng sẵn có, các hàm và thủ tục trong VBA Excel để hoàn thiện bảng tính.

Hinh7.jpg

Hình 7: Tham chiếu tới thư viện Excel từ VBA trong AutoCad

Hinh8.jpg

Hình 8: Bảng nhập giá trị đầu vào và hỗ trợ tên ký hiệu lớp trong Excel​

 Bước 3: Xây dựng chương trình xử lý, chuyển đổi dữ liệu giữa Excel và AutoCad

Đây là nội dung chính của chương trình, trước hết cần phải xây dựng thủ tục khởi động môi trường ứng dụng và xác định đối tượng tham chiếu. Hình 9 và 10 thể hiện nội dung thủ tục khởi động ứng dụng Excel và AutoCad. Các thủ tục đó đều sử dụng phương thức GetObject và CreadObject để tham chiếu và tạo đối tượng ứng dụng Automation để có thể truy cập, điều khiển. Đối tượng của ứng dụng tham chiếu đến là AcadApp (AcadApplication) hay ExcelApp (Excel.Application) mà chúng ta có kết nối và trao đổi dữ liệu giữa hai ứng dụng Excel và AutoCad (hình 11).

Hinh9.jpg

Hình 9: Khởi động AutoCad từ VBA Excel​

Hinh10.jpg

Hình 10: Khởi động Excel từ VBA AutoCad

Automation.jpg

Hình 11: Mô hình kết nối giữa Excel và AutoCad qua đối tượng Automation​

Khi ứng dụng đã được mở, chúng ta có thể tham chiếu đến các đối tượng bên trong ExcelApp (hay AcadApp) như mô tả phía dưới.
- VBA Excel: Ví dụ như để tham chiếu đến đối tượng TextStyle có tên "Standard" trong bản vẽ AutoCad đang kích hoạt (ActiveDocument) thì sử dụng dòng lệnh

AcadApp.ActiveDocument.TextStyles.Item("Standard")

- VBA AutoCad: Ví dụ như để tham chiếu đến đối tượng ô B2 trong worksheet "Khai bao" thì sử dụng dòng lệnh

ExcelApp.Worksheets("Khai bao").Range("B2")

Hai dòng lệnh trên sử dụng đối tượng AcadAppExcelApp để tham chiếu tới, còn các đối tượng bên trong cùng với phương thức, thuộc tính của chúng được sử dụng như bình thường. Sau đó tiến hành xây dựng thủ tục chuyển dữ liệu từ Excel sang AutoCad từ VBA Excel (hay AutoCad).
 
Lần chỉnh sửa cuối:
Để so sánh giữa 2 môi trường, tôi thực hiện bài toán đơn giản nhất cho dễ hiểu. Hai thủ tục viết trong Excel và AutoCad như sau:

PHP:
'Trong Excel
Public AcadApp As AcadApplication

Sub Hinh_Tru_Excel()
    Dim i As Integer
    Dim AcadMo As AcadModelSpace
    Dim AcadUt As AcadUtility
    Dim DiemDauP As Variant             'Diem dau tien de ve
    Dim DiemBaoP(0 To 11) As Double     'Diem bao phan to mat cat
    'Khai bao ghi ky hieu Ten lop
    Dim GhiTenlopP(0 To 2) As Double
    Dim Tenlop As String
    Dim TenlopT As AcadText
    'Khai bao ghi do sau lop
    Dim GhiDosauP(0 To 2) As Double
    Dim DosauT As AcadText
    'Khai bao To mat cat
    Dim MatcatH As AcadHatch
    Dim VongbaoPL(0) As AcadPolyline
    'Khai bao noi dung Hinh tru
    Dim HinhTruP(0 To 2) As Double
    Dim HinhTruT As AcadText
    'Khai bao ty le dung Hinh tru
    Dim TLdung As Single
    Dim TLdungP(0 To 2) As Double
    Dim TLdungT As AcadText
    'Khai bao chieu rong cua phan To ky hieu dia tang va Pi
    Const Chieurong = 10:  Const Pi = 3.14159
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Call KhoidongAutoCad
    'Thiet lap font ".VnArial" cho kieu "Standard"
    Set TxtStyleObj = AcadApp.ActiveDocument.TextStyles.Item("Standard")
        TxtStyleObj.SetFont ".VnArial", False, False, 0, 34
    'Xac dinh Ty le dung
    TLdung = Val(ThisWorkbook.Sheets("Khai bao").Range("J3"))
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Set AcadMo = AcadApp.ActiveDocument.ModelSpace
    Set AcadUt = AcadApp.ActiveDocument.Utility
    DiemDauP = AcadUt.GetPoint(, "Vao vi tri dau tien:")
    'Ghi noi dung ten Hinh tru va Ty le dung
    HinhTruP(0) = DiemDauP(0) + 8
    HinhTruP(1) = DiemDauP(1) + 4
    Set HinhTruT = AcadMo.AddText("HINH TRU HO KHOAN", HinhTruP, 1.5)
    TLdungP(0) = HinhTruP(0) + 5
    TLdungP(1) = HinhTruP(1) - 2.5
    Set TLdungT = AcadMo.AddText("Tû lÖ ®øng: 1/" & TLdung, TLdungP, 1)
        TLdungT.ObliqueAngle = 0.15
    DiemBaoP(0) = DiemDauP(0)
    DiemBaoP(1) = DiemDauP(1)
    'Tao vong lap duyet qua tung lop
    With ThisWorkbook.Worksheets("Khai bao").Range("B2")
        i = 1
        Do
            'Xac dinh do chenh sau giua cac lop dat
            Chenhsau = (.Offset(i - 1, 1) - .Offset(i, 1)) * 1000 / TLdung
            'Xac dinh cac diem bao va ve duong Polyline
            DiemBaoP(3) = DiemBaoP(0) + Chieurong: DiemBaoP(4) = DiemBaoP(1)
            DiemBaoP(6) = DiemBaoP(3): DiemBaoP(7) = DiemBaoP(4) + Chenhsau
            DiemBaoP(9) = DiemBaoP(6) - Chieurong: DiemBaoP(10) = DiemBaoP(7)
            Set VongbaoPL(0) = AcadMo.AddPolyline(DiemBaoP)
                VongbaoPL(0).Closed = True  'Kep kin duong Polyline
                VongbaoPL(0).Color = acRed
            'Ghi ten cac lop dat
            GhiTenlopP(0) = DiemBaoP(3) + 2
            GhiTenlopP(1) = DiemBaoP(4) + Chenhsau / 2
            Tenlop = "Líp " & .Offset(i, 0) & ": " & .Offset(i, 2)
            Set TenlopT = AcadMo.AddText(Tenlop, GhiTenlopP, 0.8)
            'Ghi do sau lop
            GhiDosauP(0) = DiemBaoP(6) + 0.5
            GhiDosauP(1) = DiemBaoP(7)
            Set DosauT = AcadMo.AddText(FormatNumber(.Offset(i, 1), 1), GhiDosauP, 1)
                DosauT.Color = acRed
            'To ky hieu mat cat dia tang
            Set MatcatH = AcadMo.AddHatch(1, .Offset(i, 4), True)
                MatcatH.PatternScale = .Offset(i, 5)
                MatcatH.PatternAngle = .Offset(i, 6) * Pi / 180
                MatcatH.AppendOuterLoop (VongbaoPL)
                MatcatH.Evaluate: MatcatH.Update
            'Gan diem de sang lop moi
            DiemBaoP(0) = DiemBaoP(9)
            DiemBaoP(1) = DiemBaoP(10)
            
            i = i + 1
        Loop Until IsEmpty(.Offset(i, 0))
    End With
    AcadApp.ZoomAll
    'Xoa bo bien doi tuong
    Set AcadApp = Nothing
    Set AcadMo = Nothing
    Set AcadUt = Nothing
End Sub

PHP:
'Trong AutoCad
Public ExcelApp As Excel.Application
Public Const Tenfile = "D:\Khoahoc2008\Hinhtru.xls"

Sub VeHinhTru_AutoCad()
    Dim i As Integer
    Dim AcadMo As AcadModelSpace
    Dim AcadUt As AcadUtility
    Dim DiemDauP As Variant             'Diem dau tien de ve
    Dim DiemBaoP(0 To 11) As Double     'Diem bao phan to mat cat
    'Khai bao ghi ky hieu Ten lop
    Dim GhiTenlopP(0 To 2) As Double
    Dim Tenlop As String
    Dim TenlopT As AcadText
    'Khai bao ghi do sau lop
    Dim GhiDosauP(0 To 2) As Double
    Dim DosauT As AcadText
    'Khai bao To mat cat
    Dim MatcatH As AcadHatch
    Dim VongbaoPL(0) As AcadPolyline
    'Khai bao noi dung Hinh tru
    Dim HinhTruP(0 To 2) As Double
    Dim HinhTruT As AcadText
    'Khai bao ty le dung Hinh tru
    Dim TLdung As Single
    Dim TLdungP(0 To 2) As Double
    Dim TLdungT As AcadText
    'Khai bao chieu rong cua phan To ky hieu dia tang va Pi
    Const Chieurong = 10:  Const Pi = 3.14159
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    'Khoi dong Excel
    Call KhoidongExcel
    TLdung = Val(ExcelApp.Sheets("Khai bao").Range("J3"))
    'Thiet lap font ".VnArial" cho kieu "Standard"
    Set TxtStyleObj = ActiveDocument.TextStyles.Item("Standard")
        TxtStyleObj.SetFont ".VnArial", False, False, 0, 34
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Set AcadMo = ActiveDocument.ModelSpace
    Set AcadUt = ActiveDocument.Utility
    DiemDauP = AcadUt.GetPoint(, "Vao vi tri dau tien:")
    'Ghi noi dung ten Hinh tru va Ty le dung
    HinhTruP(0) = DiemDauP(0) + 8
    HinhTruP(1) = DiemDauP(1) + 4
    Set HinhTruT = AcadMo.AddText("HINH TRU HO KHOAN", HinhTruP, 1.5)
    TLdungP(0) = HinhTruP(0) + 5
    TLdungP(1) = HinhTruP(1) - 2.5
    Set TLdungT = AcadMo.AddText("Tû lÖ ®øng: 1/" & TLdung, TLdungP, 1)
        TLdungT.ObliqueAngle = 0.15
    DiemBaoP(0) = DiemDauP(0)
    DiemBaoP(1) = DiemDauP(1)
    
    With ExcelApp.Worksheets("Khai bao").Range("B2")
    
        'Tao vong lap qua tung diem
        i = 1
        Do
            'Xac dinh do chenh sau giua cac lop dat
            Chenhsau = (.Offset(i - 1, 1) - .Offset(i, 1)) * 1000 / TLdung
            'Xac dinh cac diem bao va ve duong Polyline
            DiemBaoP(3) = DiemBaoP(0) + Chieurong: DiemBaoP(4) = DiemBaoP(1)
            DiemBaoP(6) = DiemBaoP(3): DiemBaoP(7) = DiemBaoP(4) + Chenhsau
            DiemBaoP(9) = DiemBaoP(6) - Chieurong: DiemBaoP(10) = DiemBaoP(7)
            Set VongbaoPL(0) = AcadMo.AddPolyline(DiemBaoP)
                VongbaoPL(0).Closed = True  'Kep kin duong Polyline
                VongbaoPL(0).color = acRed
            'Ghi ten cac lop dat
            GhiTenlopP(0) = DiemBaoP(3) + 2
            GhiTenlopP(1) = DiemBaoP(4) + Chenhsau / 2
            Tenlop = "Líp " & .Offset(i, 0) & ": " & .Offset(i, 2)
            Set TenlopT = AcadMo.AddText(Tenlop, GhiTenlopP, 0.8)
            'Ghi do sau lop
            GhiDosauP(0) = DiemBaoP(6) + 0.5
            GhiDosauP(1) = DiemBaoP(7)
            Set DosauT = AcadMo.AddText(FormatNumber(.Offset(i, 1), 1), GhiDosauP, 1)
                DosauT.color = acRed
            'To ky hieu mat cat dia tang
            Set MatcatH = AcadMo.AddHatch(1, .Offset(i, 4), True)
                MatcatH.PatternScale = .Offset(i, 5)
                MatcatH.PatternAngle = .Offset(i, 6) * Pi / 180
                MatcatH.AppendOuterLoop (VongbaoPL)
                MatcatH.Evaluate: MatcatH.Update
            'Gan diem de sang lop moi
            DiemBaoP(0) = DiemBaoP(9)
            DiemBaoP(1) = DiemBaoP(10)
            
            i = i + 1
        Loop Until IsEmpty(.Offset(i, 0))
    End With
    ZoomAll
    'Xoa bo bien doi tuong
    Set ExcelApp = Nothing
    Set AcadMo = Nothing
    Set AcadUt = Nothing

End Sub

Các bạn sẽ thấy hai thủ tục trên giống nhau như 2 chị em sinh đôi! Chính vì vậy bạn sẽ không bị bỡ ngỡ khi chuyển đổi môi trường lập trình VBA :-=

Hinh12.jpg

Hình 12: Kết quả vẽ hình trụ hố khoan và một số đối tượng vẽ chính​

Một số đối tượng chính trong thủ tục trên được mô tả trong kết quả vẽ hình trụ hố khoan tại hình 12. Trong đó, những đối tượng trong AutoCad quy ước có đuôi chữ hoa P là point, PL là polyline, T là text, L là line,...

3. Kết luận

- Chức năng Automation giúp chúng ta xây dựng các chương trình có khả năng tự động hoá trao đổi dữ liệu giữa các môi trường khác nhau. Sự kết hợp giữa Excel, AutoCad cùng với ngôn ngữ lập trình VBA tích hợp bên trong có thể giải quyết được nhiều bài toán phức tạp khác nhau trong lĩnh vực kỹ thuật.
- Giống như VB6, VBA là ngôn ngữ lập trình tiện dụng phát triển trong nhiều ứng dụng, có khả năng ứng dụng mạnh mẽ trong nhiều ngành nghề, cần được quan tâm đúng mức trong việc dạy và học tin học ứng dụng không chuyên trong các trường Đại học.
 
Lần chỉnh sửa cuối:
Ghi chú thêm:

- Khởi động Excel từ AutoCad nhanh hơn nhiều so với AutoCad từ Excel (thế mới bực chứ :=\+).

- Để linh hoạt hơn, các bạn có thể thay các đối tượng trên bằng Object để không phải phụ thuộc đời các phiên bản Excel, AutoCad (không cần khai báo).

- Là cơ sở cho việc phát triển dạng trao đổi dữ liệu giữa các môi trường khác như VB6 với Office, VB6 với AutoCad,...

Để hiểu hơn thì bạn copy thư mục dưới đây vào ổ D nhé (nếu không thì đường dẫn sai ---> báo lỗi).

PS: Mong được sự phản hồi của các thành viên GPE về bài viết này!
 

File đính kèm

  • Excel_AutoCad_VBA_Automation.rar
    293.2 KB · Đọc: 9,838
Lần chỉnh sửa cuối:
bài viết này rất là hay. nó làm cho mọi người hiểu hơn về sự tương tác và hỗ trợ lẫn nhau giữa Acad và excel
 
Re: bác PhanTuHuong
Cũng có thể dùng vbExcell tính toán out ra file dxf (dạng text) rồi open bằng Acad
Ưu điểm:
1/ rất dễ dàng
2/ nhanh cực kỳ
Nhược điểm
1/ Phải biết cấu trúc file dxf
các bác thử xem :)
 
Re: bác PhanTuHuong
Cũng có thể dùng vbExcell tính toán out ra file dxf (dạng text) rồi open bằng Acad
Ưu điểm:
1/ rất dễ dàng
2/ nhanh cực kỳ
Nhược điểm
1/ Phải biết cấu trúc file dxf
các bác thử xem :)

Rõ ràng cách bạn vừa chỉ ra lằng nhằng hơn vì có file dxf trung gian giữa Excel và Autocad. Còn ở đây là trực tiếp đọc dữ liệu từ 2 môi trường.
 
2 ví dụ của bác Phan Tu Huong em không thấy bác định đặt hàm Khoidongexcel và KhoidongAtocad ở đâu thì làm sao mà dùng CallKhoidongexcel và KhoidongAutocad được?
 
Xem nội dung của VBA

Em chào các Bác!
Em tải được một file Dutoan.xls thấy có nhiều tính năng hay mà không sao hiểu được vì chẳng thấy sử dụng hàm gì. Em rất muốn biết cấu trúc của file hỗ trợ thực hiện được tính năng đó để hiểu và ứng dụng cho công việc. Em nhờ các Bác xem và chỉ giáo cho em biết!
Em cám ơn các Bác rất nhiều!
 
Tôi dùng win7, excel 2003, cad 2004 không chạy được,
Nhưng chạy trong WinXP thì chọn ngon.
Cảm ơn Anh phantuhuong!
 
Em chào các Bác!
Em tải được một file Dutoan.xls thấy có nhiều tính năng hay mà không sao hiểu được vì chẳng thấy sử dụng hàm gì. Em rất muốn biết cấu trúc của file hỗ trợ thực hiện được tính năng đó để hiểu và ứng dụng cho công việc. Em nhờ các Bác xem và chỉ giáo cho em biết!
Em cám ơn các Bác rất nhiều!

bạn xem cuốn sách theo link sau sẽ hiểu

http://www.scribd.com/doc/7242667/Autocad-Excel-Vba-Tutorial

.
 
Tôi dùng win7, excel 2003, cad 2004 không chạy được,
Nhưng chạy trong WinXP thì chọn ngon.
Cảm ơn Anh phantuhuong!

Tôi nghĩ chả lý do gì mà không chạy được, trừ trường hợp bạn sử dụng UAC ngăn chặn khởi động 1 chương trình (Vista có, Window 7 thì tôi chưa rõ).


Quyển này thì chỉ dùng cho CAD to Excel, ai có tài liệu nào về Excel to Acad (ngoài tài liệu của Anh PhanTuHuong) không?

Tôi cũng tìm kỹ rồi, trên mạng hiếm lắm.
 
Tôi nghĩ chả lý do gì mà không chạy được, trừ trường hợp bạn sử dụng UAC ngăn chặn khởi động 1 chương trình (Vista có, Window 7 thì tôi chưa rõ).

Cái UAC dùng để chặn khởi động một chương trình này là thế nào vậy? tôi dùng Win7 không được nên chuyển sang winxp (chạy trong MS Virtual PC trên nền W7) thì được.
Anh PhanTuHuong có thể cho một ví dụ được không?

Thanks much,
 
Các hình ở bài viết #1 ko hiển thị được rôi, anh có thể fix lại đc ko?
 
Chào các bác, các bác pro giúp e chuyển dữ liệu từ Excel sang một chương trình khác được không???
VD: e muốn chuyển dữ liệu có sẵn từ Excel vào phần mềm quản lý , làm sao chỉ cần nháy vào một nút "Copy" hay "Chuyển" ... thì nó cứ tự động copy vào và chỉ ngồi chờ cho nó làm xong thế là OK.
Bác nào biết cách làm ơn giúp em với chứ cứ copy từng tí một mệt quá.
E xin đa tạ!
 
Em là TV mới mong đc học hỏi.
@PhanTuHuong: Bác ơi! mấy cái hình ở trong bài này Die hết rồi, em làm chưa hết bước một nữa. Bác có thề Post hình lại kô?
 
bài viết này rất hay,nhưng theo em vẫn còn chút thắc mắc đó là ko có một ví dụ cụ thể để mọi người chạy thử làm sao mà mọi ngườii làm theo đc đây?
 
Bác Phantuhuong chưa có vợ ....2 mà hiểu biết uyên thâm ghê, nếu mà có vợ.....2 thì không biết thế nào nhỉ, hihihihi! Cám ơn BÁc nhiều nha!
 
Status
Không mở trả lời sau này.
Web KT
Back
Top Bottom