
- VBA là gì?
- Ứng dụng trong cả office
- Chương này mục tiêu là: giúp mọi người đủ các kiến thức cơ bản để làm việc đc với VBA, các thao tác hàng ngày; ko đi sâu vào form tạo ứng dụng (nâng cao)
- Show tab Developer
- Mở trình soạn thảo VBA
- Viết dòng code đầu tiên (tạo sub và chạy: Hello World)
- Macro là gì
- Cách record một macro
- Cách cho macro vào 1 phím tắt
- chỉ ra 3 nơi để lưu 1 macro
- Mở trình VBA soạn thảo VBA
- Xem được code VBA của Macro được sinh ra
- Sửa lại được code VBA Macro theo ví dụ
- Lưu file Excel cho phép chạy Macro (xlsm)
Bài nói rõ sự khác nhau của việc sử dụng Relative References trong việc Record Macro
Và đưa ra ví dụ khi có sử dụng và không sử dụng sẽ như thế nào?
Học cách gán macro vào 3 cách:
- Nút bấm Button
- Nút Shape
- Menu Ribbon
Làm quen với trình soạn thảo VBA Editor:
- Phím tắt Alt F11 để mở lên VBA Editor
- Nói về môi trường lập trình VBA: Mỗi file excel đc mở là 1 project
- Các phím tắt khi soạn thảo VBA
- Hiển thị Thêm comand (Edit) Toolbar
- Giới thiệu về Module, User form, Class
- Màn hình Properties
- Đặt tên cho module
Nói về cú pháp của VBA:
- Không có dấu phảy ở cuối lệnh , mỗi dòng là một lệnh
- Để viết tiếp xuống dòng thì dùng dấu _
- Viết 2 lệnh 1 dòng thì dùng :
- Cách comment code trong VBA
- Cách đọc gợi ý của VBA (các tham số của hàm); các tham số bắt buộc, tham số ko bắt buộc
- Cách điền tham số của hàm ko theo thứ tự
- Khi gõ xong, VBA tự động viết hoa chữ đầu, đó cũng là cách nhận biết từ khóa trong VBA, và mình đang gõ đúng
Cách để bảo vệ project VBA, tránh người khác chỉnh sửa code VBA khi họ có được file Excel.
Điều này rất quan trọng, khi bạn không muốn người dùng / hoặc ai đó biết được code VBA, và sửa code VBA của bạn (bảo mật)
- Biến là gì?
- Các kiểu dữ liệu trong VBA
- Cách khai báo biến
- Khai báo nhiều biến cùng kiểu dữ liệu
- Kiểu dữ liệu String (chuỗi văn bản)
- Các hàm hay sử dụng với kiểu dữ liệu String
- Kiểu dữ liệu Datetime (ngày tháng)
- Cách nhập kiểu dữ liệu ngày tháng ở VBA
- Các hàm hay sử dụng với kiểu dữ liệu Datetime
- Nói rõ sự khác biệt giữa Sub và Function
- Sub chính là Macro
- Cách tạo ra hàm ở VBA? Hàm VBA được sử dụng ở ngoài Excel ra sao?
- Cách một hàm gọi một hàm khác như thế nào?
- Truyền giá trị vào 1 hàm
- Ví dụ tạo ra hàm, tạo ra sub gọi hàm area và cách sử dụng hàm ở Excel ra sao?
- Nói rõ sự khác biệt giữa Sub và Function
- Sub chính là Macro
- Cách tạo ra hàm ở VBA? Hàm VBA được sử dụng ở ngoài Excel ra sao?
- Cách một hàm gọi một hàm khác như thế nào?
- Truyền giá trị vào 1 hàm
- Ví dụ tạo ra hàm, tạo ra sub gọi hàm area và cách sử dụng hàm ở Excel ra sao?
Phạm vi của biến là khả năng truy cập của nó ở trong các thủ tục trong Dự án VBA.
Có 3 cấp độ phạm vi: Public Module, Private Module và Procedure
Bài học này bao gồm:
- Khai báo và sử dụng một biến có thể truy cập được ở tất cả các thủ tục trong một module
- Tạo một biến có thể truy cập được ở tất cả thủ tục trên tất cả các module của một dự án
- Khai báo và sử dụng biến chỉ truy câp được trong 1 thủ tục
Các khái niệm gỡ rối trong lập trình
- Debug
- Breakpoint
- Step into, Step over
- Add Watch
3 cách xử lý khi gặp lỗi
- On Error Resume Next
- On Error Goto 0
- On Error Goto xxx (xxx là một chỗ nào đó trong chương trình)
Nói về các đối tượng:
- ActiveWorkbook
- ActiveCell
- ActiveSheet
- Thisworkbook
- Selection
Cách có thể chọn được Cells, Range khi làm việc với VBA. Đây là một bài quan trọng, vì hầu hết khi làm việc với VBA đều cần sử dụng đến
- Hướng dẫn chi tiết cách để nhân bản một Sheet đang có trong VBA
- Đặt tên được Sheet mới vừa nhân bản
- Mảng dữ liệu là gì
- Mảng 1 chiều - 2 chiều
- Ánh xạ giữa mảng và Range
- Lấy dữ liệu từ Range và đổ vào Array
- Nói rõ về CurrentRegion: vùng dữ liệu đang làm việc
- Copy được vùng dữ liệu sang một vùng khác
- Sử dụng hàm End để di chuyển trong RANGE
- Cách di chuyển từ đầu hàng về cuối hàng, từ đầu cột về cuối cột.
- Sử dụng kiến thức này về sau để chọn vùng dữ liệu rất hiệu quả
Viết được hàm lấy ra số thứ tự của dòng cuối cùng trong Range. Hàm này cực kỳ quan trọng, được sử dụng rất nhiều cho các bài về sau
- Từ khóa With, cú pháp và cách sử dụng từ khóa With
- Sử dụng từ khóa With để code được gọn gàng, không phải lặp đi lặp lai nhiều đoạn code
- Giới thiệu về hộp thoại Message box, cách để hiển thị thông báo cho người dùng cuối.
- Cách tham số của Message box, các dạng nút bấm trên hộp thoại Message box
- Cú pháp sử dụng của input box
- Tùy chỉnh các tham số của hộp thoại Inputbox
- Validate cho kiểu nhập vào Inputbox
Cách sử dụng nâng cao cho hộp thoại Inputbox, cho phép người dùng quét chọn một vùng dữ liệu trong Excel
- Giới thiệu hàm rẽ nhánh IF ELSE
- Cú pháp viết IF ELSE trong VBA
- Viết biểu thức logic trong IF ELSE
- Giới thiệu 2 cách viết IF lồng IF
- IF ELSEIF
- và IF ELSE IF
- Khi cần kết hợp nhiều điều kiện logic, cần thêm các hàm AND hoặc OR
- AND để kết hợp các điều kiện cùng đúng
- OR là hoặc các điều kiện
- Giới thiệu về công dụng của SELECT … CASE
- Cú pháp sử dụng SELECT CASE ..
- Khi nào thì sử dụng SELECT … CASE
- Giới thiệu về vòng lặp trong lập trình VBA
- Sử dụng vòng lặp For … Next
- Ứng dụng lấy danh sách files trong 1 folder
- Giới thiệu kiểu lặp thứ 2 For Each , chuyên để lặp danh sách các đối tượng
- Cú pháp viết For Each
- Ví dụ sử dụng For Each
- Giới thiệu về vòng lặp vô hạn. Các vòng lặp For ở trên là vòng lặp hữu hạn.
- Cú pháp của vòng lặp vô hạn Do Until
- Sử dụng Do Until để làm 1 ứng dụng tìm kiếm đơn giản
- Cú pháp của vòng lặp vô hạn thứ 2: Do While
- Sử dụng Do While để làm 1 ứng dụng tìm kiếm đơn giản
- Nói rõ khi sử dụng các vòng lặp, tốc độ thực thi bị ảnh hưởng bởi các yếu tố gì
- Cách để loại bỏ các yếu tố ảnh hưởng
- Screenupdating, Calculation, Display Alert
- Hướng dẫn cách dụng OpenFileName để chọn được file
- Cách cấu hình để cho chọn 1 file hay nhiều file
- Cách đưa danh sách các files vào một list objects
- Sử dụng VBA duyệt từng file và làm việc với từng file
- Sử dụng Find để tìm kiếm dữ liệu trong Excel
- Các cấu hình hàm Find sử dụng VBA
- Cấu hình tìm kiếm chính xác, xấp xỉ, tìm kiếm trong Sheet hay toàn bộ Workbook
Bài toán đặt ra: có 1 file có chứa nhiều sheet, sử dụng VBA code để tách file đó ra thành nhiều file, cùng chứa trong folder. Đăt tên cho từng file mới
- Giới thiệu về Userform trong VBA. Một trong 3 phần đã nói của VBA (Module, Userform, Class)
- Cách tạo ra một Userform mới
- Cấu hình Caption, Label, Textbox, Button
- Chi tiết cách làm việc với Button
- Cách thêm được Nút vào trên Form
- Cách sửa cấu hình cho Nút (đặt tên nút, Gán label cho nút)
- Gán sự kiện cho Nút bấm và thực hiện code VBA
- Nói rõ về cách hiển thị 1 form
- Các chế độ khi hiển thị form
- Cách gọi 1 form khác từ 1 form
- Chi tiết về cách làm việc với Textbox
- Cách thêm Textbox vào Form
- Cách tùy chỉnh cấu hình cho Textbox (Tên, độ dài textbox, độ dài ký tự cho phép,cho phép nhập 1 dòng hay nhiều dòng)
- Cách lấy và gán giá trị của Textbox trong code VBA
- Chi tiết về cách làm việc với nút chọn Option Button
- Cách thêm Option Button vào Form
- Thêm các giá trị cho Option Button
- Cấu hình giá trị mặc định chọn (check) cho Option Button
- Cấu hình Group cho Option Button
- Cách lấy và gán giá trị cho Option Button trong code VBA
- Chi tiết về cách làm việc với Checkbox, sự khác nhau giữa Optio Button và Checkbox, khi nào nên sử dụng
- Cách thêm Checkbox vào Form
- Thêm các giá trị cho Checkbox
- Cấu hình giá trị mặc định chọn (check) cho Checkbox
- Cách lấy và gán giá trị cho Checkbox trong code VBA
- Chi tiết về cách làm việc với Datetime trên Form
- Cách sử dụng Textbox để cho nhập giá trị Datetime
- Cách validate kiểu giá trị Datetime trên form
- Cách lấy giá trị và gán giá trị Datetime trong code VBA
- Giới thiệu về Tab Index: công cụ giúp đánh số thứ tự cho các control
- Cách cấu hình Tab Index, giúp người dùng sử dụng phím Tab để di chuyển giữa các Control trên form dễ dàng, và theo ý muốn của mình
- Giới thiệu về bài toán ứng dụng Quản lý dữ liệu nhân viên
- Hướng dẫn từng bước để tạo được form thêm được dữ liệu Nhân viên
Tạo form nhập liệu:
- Sửa dòng dữ liệu nhân viên
- Xóa dòng dữ liệu nhân viên, có cảnh báo confirm khi xóa
- Cách gán các chức năng của Form vào Menu Ribbon của Excel
- Tạo Menu Ribbon mớ, Tạo group
- Thêm command mới vào Menu Ribbon
Trong 1 vùng dữ liệu, thường chứa Tiêu đề và vùng dữ liệu thực sự. Bài này hướng dẫn cách để lấy ra được vùng chứa dữ liệu thực sự (bỏ qua tiêu đề)
Cách để lấy ra được danh sách files trong một Folder dựa vào đường dẫn
Sử dụng Do While để duyệt tất cả các files
Sử dụng bộ lọc để lọc ra các file nhất định (theo filetype, name)
Một ứng dụng Sử dụng Advanced Filter để lọc dữ liệu, kể hợp với vòng lặp để có thể tổng hợp được báo cáo tự động, theo một Template nhất định
Cách để copy một vùng dữ liệu ra một vùng dữ liệu khác
Ứng dụng tổng hợp báo cáo từ nhiều file vào một file, sử dụng VBA như thế nào?
Sử dụng Auto Filter với VBA Code để làm báo cáo tự động
- Thế nào là một sự kiện?
- Giới thiệu về các sự kiện trong VBA Excel?
- Cách cấu hình và code VBA với sự kiện mở file Open
Sử dụng code VBA để thực thi 1 số tác vụ, mỗi khi có sự thay đổi ở một Sheet
- Giới thiệu bài toán, tại sao cần chặn không cho Paste vào 1 vùng dữ liệu
- Hướng dẫn chi tiết code VBA để làm được việc chặn Paste
Bạn đang sử dụng Excel như một phần không thể thiếu trong công việc của mình. Tuy nhiên, Excel vẫn chưa thể đáp ứng được tất cả nhu cầu của bạn.
Bạn vẫn phải làm rất nhiều các công việc lặp đi lặp lại một cách thủ công. Và với số lượng dữ liệu lớn, bạn vẫn ước có một công cụ gì đó giúp bạn tự động hóa được toàn bộ công việc này.
Bạn đã nghe nói đến VBA, Macro. Nhưng với bạn, nó vẫn là cái gì đó rất khó, mà chỉ "dân công nghệ" mới có thể làm được. Có thể, bạn rất muốn thử học VBA, Macro, nhưng bạn chưa biết bắt đầu từ đâu? học cái gì trước, cái gì sau?
Hãy tham gia khoá học này để:
Được học từ đầu, từ cơ bản đến nâng cao kiến thức về VBA
Được học từ gốc, không sợ không biết gì về VBA thì không học được
Nẵm rõ cách sử dụng: Macro, Variable, Sub, Fuction, Userform, vòng lặp For, lệnh điều khiển IF ELSE, ...
Được giới thiệu các ứng dụng có thể dùng được ngay trong công việc
Khóa học thiết kế theo phương pháp L.I.P.E, cung cấp đầy đủ giáo trình từ lý thuyết đến các bài thực hành sau mỗi bài, các bài kiểm tra sau từng chương và bài thi hết khóa học, giúp học viên trau dồi kỹ năng ngay sau khi học
Được trợ giúp trực tiếp từ giảng viên, trả lời thắc mắc của bạn trong hệ thống diễn đàn lớp học
VBA là một công cụ tuyệt vời mà Microsoft bổ sung cho không chỉ Excel, mà toàn bộ các công cụ Office khác, để giúp người dùng như bạn tự mình tạo ra được các hàm dành cho riêng bạn, tự động hóa các công việc lặp lại với dữ liệu lớn, tạo ra được các Form nhập liệu quản lý phức tạp theo ý bạn, ...và rất nhiều thứ khác nữa.
Đầu tư cho việc học luôn luôn sinh lời. Hãy đầu tư cho bản thân ngay hôm nay và làm chủ kỹ năng VBA.
Chúc bạn thành công!