• Thứ Hai, 10/01/2011 08:01 (GMT+7)

    Kết xuất file DBF ra file XLS hiện hữu

    Câu hỏi :

    Tôi dùng Visual FoxPro, chuyển được file *. DBF sang file Excel mới bằng lệnh: Export to type XL5, nhưng không kết xuất ra được file Excel hiện hữu. Xin hướng dẫn.



    Trả lời :

    Đúng như bạn nói, bạn có thể dùng lệnh Export to hay Copy to của ngôn ngữ Foxpro để chuyển bảng dữ liệu từ file *.dbf thành 1 bảng tính Excel. Tuy nhiên dùng 1 trong 2 lệnh này có nhiều điểm yếu như nó chỉ lưu dữ liệu lên file Excel mới với định dạng khá cũ (mặc dù ứng dụng Excel mới vẫn xử lý được), nó không cho phép lưu dữ liệu lên file Excel đã có sẵn. Nếu muốn xử lý nhiều yêu cầu riêng tư một cách tự do, bạn nên dùng các đối tượng trong thư viện "Excel Automation" như Application, Workbooks, Worksheets,... Sau đây là đoạn code VFP dùng các đối tượng "Excel Automation" để đọc bảng dữ liệu trong file *.dbf rồi lưu bảng này vào 1 worksheet trong file Excel đã có sẵn:

    Clear All
    Set Safety Off
    * tạo đối tượng ứng dụng Excel
    oExcel = Createobject("Excel.application")
    *mở file Excel có sẵn
    oExcel.workbooks.Open ("C:\data\test.xls")
    *mở file DBF chứa bảng dữ liệu cần chuyển
    oExcel.workbooks.Open("c:\data\mydata.dbf")
    *copy bảng dữ liệu từ file DBF sang worksheet Excel
    oExcel.sheets(1).Copy(oExcel.workbooks("test.xls").sheets(1))
    *lưu file Excel
    oExcel.activeWorkbook.Save
    *dừng đối tượng Excel
    oExcel.quit
    Wait Clear

    Chuyên mục: Cơ sở dữ liệu