Monday, February 3, 2014

Excel - Ngôn ngữ lập trình VBA trong Excel

Bài viết này giới thiệu với các bạn về ngôn ngữ lập trình trong Excel được gọi là VBA (Visual Basic for Applications).  Ta sử dụng ngôn ngữ lập trình VBA để viết ra các macro là các chương trình hoàn chỉnh. Các chương trình này sẽ thực hiện tự động các lệnh mà bạn đã viết ra cho nó.

Ví dụ:
Bạn quản lý 2 cửa hàng. Hàng ngày, 2 cửa hàng này gửi số liệu bán hàng về cho chúng ta và ta phải lập một file tổng hợp số liệu của cả 2 cửa hàng. Ta có 3 file là file Tổng hợp dữ liệu, file Dữ liệu cửa hàng 1, file Dữ liệu cửa hàng 2.

Ta sẽ tạo một macro để xoá dữ liệu của ngày cũ, sau đó mở lần lượt file dữ liệu của từng cửa hàng và copy dữ liệu đó vào một file tổng hợp.

Ta làm như sau :

Trên thanh công cụ vào Developer, chọn Visual Basic, chọn Insert Module. Viết chương trình bằng ngôn ngữ VBA như sau để tạo macro thực hiện các công việc như ta mong muốn :

Sub Tonghopdulieu()
' Tonghopdulieu Macro
    Sheets("Sheet1").Select
    Range("A2:E2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.ClearContents
    Range("A2").Select
    Workbooks.Open Filename:= _
        "C:\Users\Hanh Le\Desktop\ File du lieu\Du lieu cua hang 1.xlsx"
    Range("A2:E2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Windows("Tong hop du lieu.xlsm").Activate
    ActiveSheet.Paste
    Range("A2").Select
    Selection.End(xlDown).Offset(1, 0).Select
    Workbooks.Open Filename:= _
        "C:\Users\ Hanh Le\Desktop\ File du lieu\Du lieu cua hang 2).xlsx"
    Range("A2:E2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("Tong hop du lieu.xlsm").Activate
    ActiveSheet.Paste
    Range("A1").Select
    Application.CutCopyMode = False
    ActiveWorkbook.Save
End Sub


Ta vừa tạo xong một macro có tên là Tonghopdulieu. Để thực hiện việc tổng hợp dữ liệu tự động, ta chỉ việc chạy macro này bằng cách nhấn nút run để chạy chương trình.

Tài liệu tham khảo
http://www.homeandlearn.org/index.html
http://excelvbatutor.com/vba_tutorial.html

No comments:

Post a Comment

Chức năng File requests trong Dropbox

Chức năng file requests trong Dropbox giúp cho việc tập hợp và quản lý các tài liệu của một nhóm làm việc được dễ dàng và thuận tiện. So với...