Networks Business Online Việt Nam & International VH2

Ebook dành cho người mới bắt đầu lập trình VBA trong Excel – Tài liệu text

Đăng ngày 07 November, 2022 bởi admin

Ebook dành cho người mới bắt đầu lập trình VBA trong Excel

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (10.35 MB, 60 trang )

Bắt đầu với
VBA cơ bản

họcExcel.Online
select * from [EXCEL]

Hello VBA

họcExcel.Online
select * from [EXCEL]

Cảm ơn các bạn đã đọc đến đây. Ai thích học thì đọc tiếp, ai không thích có
thể gửi luôn cho bạn khác. Sách dành cho những bạn mới bắt đầu và làm
quen với VBA được viết cụ thể và dễ hiểu, chỗ nào khó hiểu quá bạn có thể
bỏ qua.
Sách giúp các bạn bơi từ từ, nhảy xuống biển kiến thức từ chỗ nông trước,
rồi bơi dần ra chỗ sâu. Ai lỡ nhảy vào chỗ sâu rồi, có thể đọc lại như phao
để bơi nhanh hơn.
Đây là sách miễn phí, có quảng cáo. Sách có phí được đăng tải trên
https://hocexcel.online
Các file, các đoạn code ví dụ trong sách này có thể được tìm thấy ở đường
link sau đây
https://github.com/ndthanh/vbabook
Về tác giả:
https://www.linkedin.com/in/ducthanhnguyen/
Trang chủ:
https://blog.hocexcel.online

Nguyễn Đức Thanh
Founder của Học Excel Online

họcExcel.Online
select * from [EXCEL]

1. Excel Macros là gì?
2. VBA là gì?
3. Làm thế nào để bắt đầu?
4. Sử dụng chức năng Macro Recorder
5. Ứng dụng của VBA / Macros
6. Làm việc với đối tượng Workbook
7. Làm việc với đối tượng Worksheet
8. Làm việc với đối tượng Range
9. Thuộc tính Cells của đối tượng Worksheet
10. Biến số và kiểu dữ liệu
11. Cấu trúc IF trong VBA
12. Cấu trúc WITH … END WITH
13. Vòng lặp trong VBA
14. Lọc dữ liệu từ 1 Sheet ra nhiều sheets
15. Tổng hợp dữ liệu nhiều sheets vào 1 sheet
16. Làm việc với mảng trong VBA
17. Sub và Function trong Excel
18.Hàm người dùng – UDF (User defined function)

01
01
01
05
13
14

19
23
30
31
35
39
40
48
51
52
54
55

họcExcel.Online
select * from [EXCEL]

01
1. Excel Macros là gì?
Excel Macros là những chương trình nhỏ giúp lặp đi lặp lại những thao tác
từ đơn giản đến phức tạp một cách tự động trong Excel. Ngoài Excel
Macros, chúng ta còn có thể gặp Word Macro, PowerPoint Macro, Outlook
Macro …

2. VBA là gì?
VBA viết tắt của Visual Basic for Applications, là một ngôn ngữ lập trình đi
kèm với một số phần mềm của Microsoft, trong đó có Excel, Word,
PowerPoint, Outlook, …

3. Làm thế nào để bắt đầu?

Để bắt đầu với Excel Macros nói riêng hay Macros nói chung và ngôn ngữ
lập trình VBA, chúng ta sẽ đi mở trình soạn thảo VBA. Để mở trình soạn
thảo VBA, các bạn hãy theo từng bước sau đây
1. Trong Excel, bấm chuột phải vào Ribbon và chọn mục Customize the
Ribbon …

họcExcel.Online
select * from [EXCEL]

02
2. Trong cửa sổ Excel Options, chọn mục Customize Ribbon bên tay trái.
Trong Main Tabs, tích vào lựa chọn Developer rồi nhấn OK

3. Kết quả của bước số 2, thẻ Developer đã được hiển thị trên Ribbon của
Excel

họcExcel.Online
select * from [EXCEL]

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

03
4. Để chạy được file Excel có chứa Macros hoặc code VBA, tuỳ chỉnh về
Macro Security cần được thiết lập như sau. Trong thẻ Developer, bấm nút
Macro Security

Trong cửa sổ Trust Center, thiết lập các lựa chọn như hình vẽ

họcExcel.Online
select * from [EXCEL]

04
5. Đến bước này, file Excel đang làm việc cần được lưu dưới dạng có hỗ trợ
Macros hoặc code VBA với phần mở rộng là XLSM. Để thực hiện việc này,
trong Excel, chọn thẻ File > Save as … hoặc sử dụng phím tắt F12 trên bàn
phím

Đến bước này, file Excel đã sẵn sàng cho việc sử dụng với Macros hoặc
VBA.

họcExcel.Online
select * from [EXCEL]

05
4. Sử dụng chức năng Macro Recorder
Chức năng Macro Recorder sẽ giúp chúng ta rất nhiều trong việc học VBA.
Để ghi 1 macro đầu tiên: chọn thẻ Developer > bấm nút Record Macro

Bấm nút

https://goo.gl/bxGUEm

hoặc

SCAN MÃ

ĐỂ NHẬN NGAY COUPON

GIẢM GIÁ 30%
KHOÁ HỌC

VBA101 – VBA cơ bản cho người
mới bắt đầu

họcExcel.Online
select * from [EXCEL]

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

06
4. Sử dụng chức năng Macro Recorder
Chức năng Macro Recorder sẽ giúp chúng ta rất nhiều trong việc học VBA.
Để ghi 1 macro đầu tiên: chọn thẻ Developer > bấm nút Record Macro

Trong hộp thoại Record Macro, chúng ta có thể đặt tên cho Macro hoặc
gán phím tắt và viết miêu tả cho Macro đó. Ở đây, để tiếp tục ta bấm nút
OK.

họcExcel.Online
select * from [EXCEL]

07

Trong quá trình ghi code Macro, thao tác của bạn ở cửa sổ bên tay trái sẽ được chức năng Record Macro ghi lại
trong Macro1() bên tay phải

họcExcel.Online
select * from [EXCEL]

08
Mặc định, Macro tạo ra sẽ được ghi trong Module 1 như hình minh hoạ.
Trong quá trình học VBA bằng cách ghi Macro, các bạn nên để cửa sổ Excel
và cửa số soạn thảo VBA song song, khi đó bạn có thể nhìn thấy thao tác
nào trên cửa sổ Excel sẽ được ghi lại bởi Macro ra sao.
Sau khi kết thúc việc ghi Macro, chúng ta cần bấm vào thẻ Developer 1 lần
nữa và bấm nút Stop Recording

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

họcExcel.Online
select * from [EXCEL]

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

09
Viết những dòng code đầu tiên
1. Để viết hoặc chỉnh sửa code VBA trong Excel, trình soạn thảo VBA trong
Excel sẽ hỗ trợ việc này. Để mở trình soạn thảo VBA (Visual Basic Editor,
viết tắt VBE), chúng ta sử dụng thẻ Developer, rồi bấm nút Visual Basic như

hình minh hoạ hoặc bấm tổ hợp phím tắt ALT + F11

Cửa sổ soạn thảo VBA trông sẽ như thế này

Cửa sổ Locals, sẽ giúp bạn theo dõi các đối tượng
và biến số trong quá trình chạy code VBA.
Cách mở: Menu View > Locals
Cửa sổ Project thể hiện thông tin liên quan đến các
đối tượng bảng tính, files, form
Cách mở: Menu View > Project Explorer
Cửa sổ Properties thể hiện các thuộc tính của đối
tượng đang được chọn. Chúng ta có thể thay đổi
thuộc tính của các đối tượng trực tiếp trong cửa sổ
này
Cách mở: Menu View > Properties Window

Đây là cửa sổ Immediate
(Cách mở: Menu View > Immediate Window)
Cửa sổ Immediate Window là nơi chúng ta có thể
thử code VBA hoặc hiển thị nội dung của lệnh
Debug.Print

họcExcel.Online
select * from [EXCEL]

10
2. Module sẽ là nơi chứa code VBA, để tạo 1 Module mới, trong VBE, chọn
menu Insert > Module. Tổ hợp phím tắt để tạo 1 Module mới là ALT + I + M

3. Module mới được tạo ra sẽ có tên mặc định là Module1. Tên của Module
này có thể được đổi trong cửa sổ Properties > thuộc tính (Name)

GIẢM NGAY 30%
https://goo.gl/bxGUEm

Khoá học
VBA CHO NGƯỜI MỚI BẮT ĐẦU

họcExcel.Online
select * from [EXCEL]

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

11
4. Click đúp vào Module mới tạo ra, chúng ta có thể soạn thảo đoạn code
VBA đầu tiên

5. Để chạy đoạn code này, chúng ta có thể click chuột trái vào bên trong
Sub macroDauTien(), có thể là ngay trước chữ “MsgBox” rồi chọn
menu Run > Run Sub/UserForm

họcExcel.Online
select * from [EXCEL]

12
6. Sau khi chạy đoạn Macro đầu tiên, kết quả là 1 thông báo trong Excel

Đến bước này, nếu bạn nhận được thông báo như vậy, nghĩa là môi trường
lập trình VBA của bạn đã được thiết lập thành công và bạn có thể bắt đầu
thực hiện việc lập trình VBA hoặc tạo ra những Macro của riêng mình. Ở lần
tới, khi bạn mở 1 file Excel có chứa Macro hoặc code VBA, bạn sẽ nhận được
thông báo như sau, bạn chỉ cần bấm nút Enable Content là có thể sử dụng
được Macro đã lưu trong file rồi.

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

họcExcel.Online
select * from [EXCEL]

13
5. Ứng dụng của VBA / Macros
XLS

XLS

XLS

XLS

1. Tách 1 file Excel ra nhiều files Excel
2. Tách 1 sheet Excel ra nhiều sheets Excel
3. Gửi thư hàng loạt qua Outlook tự động
4. Tạo báo cáo tự động, lấy số liệu, định dạng số liệu
5. Tạo nhiều files Word lấy thông tin từ 1 file Excel

6. Tạo nhiều files PowerPoint lấy thông từ 1 file Excel
7. Tổng hợp dữ liệu từ nhiều files Excel vào 1 file Excel
8. Tổng hợp dữ liệu từ nhiều sheets Excel vào 1 file Excel
9. Xử lý dữ liệu từ nhiều nguồn, nhiều định dạng 1 cách tự động
10. …
và rất nhiều ứng dụng khác các bạn sẽ được giới thiệu trong suốt các khoá
học từ Học Excel Online

1

2

3

4

5

họcExcel.Online
select * from [EXCEL]

14
6. Làm việc với đối tượng Workbook
Workbook hay file Excel, tệp Excel là đối tượng đầu tiên bạn quan tâm tới
và được tiếp xúc khi lập trình VBA, trong chương này, chúng ta sẽ đi làm
việc với đối tượng Workbook và tìm hiểu 1 số thuộc tính cơ bản của đối
tượng này. Trong sách này ở phần phía sau, các bạn sẽ dựa vào kiến thức
chương này để có thể tách gộp được nhiều files Excel phục vụ cho mục đích
của mình. Vậy nên, hãy chú ý vào những thuộc tính mà đối tượng Workbook

hỗ trợ.
Để học các kiến thức này 1 cách trực quan và sinh động hơn, hãy click link
tới khoá học ở phía dưới. Mong hẹn gặp các bạn trong khoá học.

Bấm nút

https://goo.gl/bxGUEm

hoặc

SCAN MÃ
ĐỂ NHẬN NGAY COUPON

GIẢM GIÁ 30%
KHOÁ HỌC

VBA101 – VBA cơ bản cho người
mới bắt đầu

họcExcel.Online
select * from [EXCEL]

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

15
6. Làm việc với đối tượng Workbook
Truy cập một số thuộc tính cơ bản của Workbook
Để bắt đầu làm việc với đối tượng Workbook trong Excel, bạn có thể thử

những dòng code sau đây trong 1 thủ tục (Sub) được lưu ở trong 1 Module

Ý nghĩa của từng câu lệnh như thế nào thì có lẽ các bạn cũng đã đoán
được:
Range(“A1”) = ThisWorkbook.FullName
↳ Câu lệnh này ghi đường dẫn đầy đủ đến Workbook chứa macro vào
vùng A1
Range(“A2”) = ThisWorkbook.Name
↳ Câu lệnh này ghi tên của Workbook hoặc file Excel bao gồm cả phần
mở rộng vào vùng A2
Range(“A3”) = ThisWorkbook.Path
↳ Câu lệnh này ghi đường dẫn tới thư mục lưu Workbook hoặc file Excel
hiện thời vào vùng A3

họcExcel.Online
select * from [EXCEL]

16
Một số thao tác cơ bản với Workbook
Mở Workbook
Thủ tục sau đây sẽ mở 1 Workbook biết đường dẫn tới Workbook đó được
lưu trong vùng A1. Hãy thử Sub này trong Module của 1 file Excel bạn mới
tạo ra.

Workbooks.Open Filename:={đường dẫn tới file excel}
↳ Câu lệnh này sẽ mở File Excel được lưu ở trong đường dẫn
Đóng Workbook
Workbooks.Close SaveChanges:=True
↳ Câu lệnh này sẽ đóng 1 Workbook và lưu những thay đổi được thực hiện

trên Workbook đó. Nếu thay True bằng False thì Workbook sẽ được
đóng, thay đổi sẽ không được lưu
Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

họcExcel.Online
select * from [EXCEL]

Khoá học VBA cơ bản cho người mới bắt đầu
Click link giảm giá 30%: https://goo.gl/bxGUEm

17
Tạo mới Workbook
Để tạo mới 1 Workbook, chúng ta có thể sử dụng câu lệnh VBA sau trong 1
Sub
Workbooks.Add
↳ Câu lệnh này sẽ tạo mới 1 Workbook

Lưu Workbook với 1 tên khác (Save as …)
Để lưu Workbook chứa code VBA dưới 1 tên khác, ta có thể thực hiện đoạn
code sau đây

ThisWorkbook.SaveAs “C:\Users\thanh\Desktop\a.xlsm”
↳ Câu lệnh này sẽ lưu Workbook có chứa đoạn code VBA trên dưới tên là
a.xlsm tại đường dẫn chỉ định

họcExcel.Online
select * from [EXCEL]

18
Đếm số lượng Workbook, in đường dẫn ra cửa sổ Immediate
Trong 1 thời điểm, có thể nhiều file Excel sẽ cùng được mở trên máy tính
của bạn, để đếm được số lượng Workbook hoặc in đường dẫn tới các
Workbook đó chúng ta có thể có 1 số đoạn code như sau
Debug.Print Workbooks.Count
↳ Câu lệnh này sẽ ghi số lượng Workbooks đang mở ra cửa sổ Immediate
Debug.Print Workbooks(2).FullName
↳ Câu lệnh này sẽ ghi tên đầy đủ và đường dẫn tới Workbooks thứ 2
đang được mở
Debug.Print Workbooks(Workbooks.Count).FullName
↳ Câu lệnh này sẽ ghi tên đầy đủ và đường dẫn tới Workbooks cuối cùng
được mở

họcExcel.Online
select * from [EXCEL]

19
7. Làm việc với đối tượng Worksheet
Ngoài Workbook là đối tượng chúng ta đã nhắc đến trong chương trước, đối
tượng Worksheet chỉ những bảng tính trong file Excel của chúng ta là nơi
chúng ta lưu trữ và xử lý phần lớn dữ liệu. Các thao tác với Worksheet cùng
các thuộc tính của đối tượng này sẽ được trình bày trong các trang tiếp
theo của tài liệu

Bấm nút

https://goo.gl/Pe3Exk

hoặc

SCAN MÃ
ĐỂ NHẬN NGAY COUPON

GIẢM GIÁ 30%
KHOÁ HỌC

VBA201 – Lập trình VBA nâng
cao trong Excel

họcExcel.Online
select * from [EXCEL]

20
7. Làm việc với đối tượng Worksheet
Các cách tham chiếu tới Worksheet trong Excel
Trước khi truy cập vào các thuộc tính của đối tượng Worksheet trong Excel,
bạn cần tham chiếu đến đối tượng này. Để tham chiếu tới Worksheet trong
Excel, bạn có thể sử dụng 1 số cách sau đây
Debug.print Worksheets(1).Name
↳ Câu lệnh này ghi tên của Worksheet ngoài cùng bên trái ra cửa sổ
Immediate. Đây là cách tham chiếu theo thứ tự

Debug.print Worksheets.Count
↳ Câu lệnh này ghi ra cửa sổ Immediate số lượng Sheets trong Workbook
Debug.print Worksheets(Worksheets.Count).Name
↳ Câu lệnh này ghi ra cửa sổ Immediate tên của Sheets ngoài cùng bên

phải trong Workbook – “Bang 7”
Worksheets.Count trả về số lượng Worksheets trong Workbook hiện
thời

họcExcel.Online
select * from [EXCEL]

21
Tham chiếu tới Worksheets bằng code name: trong trình soạn thảo VBA,
cửa sổ Project – VBAProject, bạn nhìn thấy Sheet1 (Bang 1). Ở đây, Sheet1
là code name của đối tượng bảng tính này, còn “Bang 1” là tên của bảng
tính đó.
Debug.print Sheet1.Name
↳ Câu lệnh này ghi tên của bảng tính có code name là Sheet1 ra cửa sổ
Immediate. Đây là cách tham chiếu theo code name.
Debug.print Worksheets(“Bang 1”).Name
↳ Câu lệnh này ghi tên của bảng tính có tên là “Bang 1” ra cửa sổ
Immediate. Đây là cách tham chiếu theo tên bảng tính

Thêm 1 Worksheet
Debug.print Worksheets.Add
↳ Thêm 1 worksheet mới
Debug.print Worksheets.Add Count:=3
↳ Thêm 3 worksheet mới
Debug.print Worksheets.Add Before:=Worksheets(1)
↳ Thêm 1 worksheet mới, phía bên trái Worksheet đầu tiên
Debug.print Worksheets.Add After:=Worksheets(3)
↳ Thêm 1 worksheet mới, phía bên phải Worksheet thứ 3

Copy 1 Worksheet
Sheet1.copy After:=Worksheets(3)
↳ Copy bảng tính với code name Sheet1, bản copy được đặt phía sau
Worksheet thứ 3
Sheet1.copy Before:=Worksheets(3)
↳ Copy bảng tính với code name Sheet1, bản copy được đặt phía trước
Worksheet thứ 3

họcExcel.Online
select * from [EXCEL]

22
Xoá 1 Worksheet
Sheet1.Delete
↳ Câu lệnh này sẽ xoá bảng tính có code name là Sheet1, khi thực hiện
câu lệnh này, Excel sẽ hỏi để xác nhận lại, để bỏ quan xác nhận và thực
hiện thao tác xoá bảng tính, code như sau
Application.DisplayAlerts = False
Sheet1.Delete
Application.DisplayAlerts = True
↳ Xoá bảng tính với code name Sheet1, bỏ qua hộp thoại xác nhận của
Excel về việc xoá

Sửa tên 1 Worksheet
Sheet1.Name = “New Name”
↳ Câu lệnh này sẽ đổi tên bảng tính có code name là Sheet1 thành “New
Name”

GIẢM NGAY 30%

https://goo.gl/bxGUEm

Khoá học
VBA CHO NGƯỜI MỚI BẮT ĐẦU

Ẩn / Hiện 1 bảng tính
Sheet1.Visible = xlSheetHidden
↳ Câu lệnh này sẽ ẩn bảng tính có code name là Sheet1
Sheet1.Visible = xlSheetVisible
↳ Câu lệnh này sẽ hiện bảng tính có code name là Sheet1
Sheet1.Visible = xlSheetVeryHidden
↳ Câu lệnh này sẽ ẩn bảng tính có code name là Sheet1. Chế độ ẩn này
làm cho bảng tính không thể được bỏ ẩn theo cách bấm chuột phải vào
tên sheet > Unhide … trên giao diện của Excel

họcExcel. Onlineselect * from [ EXCEL ] 1. Excel Macros là gì ? 2. VBA là gì ? 3. Làm thế nào để bắt đầu ? 4. Sử dụng tính năng Macro Recorder5. Ứng dụng của VBA / Macros6. Làm việc với đối tượng người dùng Workbook7. Làm việc với đối tượng người tiêu dùng Worksheet8. Làm việc với đối tượng người tiêu dùng Range9. Thuộc tính Cells của đối tượng người dùng Worksheet10. Biến số và kiểu dữ liệu11. Cấu trúc IF trong VBA12. Cấu trúc WITH … END WITH13. Vòng lặp trong VBA14. Lọc dữ liệu từ 1 Sheet ra nhiều sheets15. Tổng hợp tài liệu nhiều sheets vào 1 sheet16. Làm việc với mảng trong VBA17. Sub và Function trong Excel18. Hàm người dùng – UDF ( User defined function ) 010101051314192330313539404851525455 họcExcel. Onlineselect * from [ EXCEL ] 011. Excel Macros là gì ? Excel Macros là những chương trình nhỏ giúp lặp đi lặp lại những thao táctừ đơn thuần đến phức tạp một cách tự động hóa trong Excel. Ngoài ExcelMacros, tất cả chúng ta còn hoàn toàn có thể gặp Word Macro, PowerPoint Macro, OutlookMacro … 2. VBA là gì ? VBA viết tắt của Visual Basic for Applications, là một ngôn từ lập trình đikèm với một số ít ứng dụng của Microsoft, trong đó có Excel, Word, PowerPoint, Outlook, … 3. Làm thế nào để bắt đầu ? Để bắt đầu với Excel Macros nói riêng hay Macros nói chung và ngôn ngữlập trình VBA, tất cả chúng ta sẽ đi mở trình soạn thảo VBA. Để mở trình soạnthảo VBA, những bạn hãy theo từng bước sau đây1. Trong Excel, bấm chuột phải vào Ribbon và chọn mục Customize theRibbon … họcExcel. Onlineselect * from [ EXCEL ] 022. Trong hành lang cửa số Excel Options, chọn mục Customize Ribbon bên tay trái. Trong Main Tabs, tích vào lựa chọn Developer rồi nhấn OK3. Kết quả của bước số 2, thẻ Developer đã được hiển thị trên Ribbon củaExcelhọcExcel. Onlineselect * from [ EXCEL ] Khóa học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEm034. Để chạy được file Excel có chứa Macros hoặc code VBA, tùy chỉnh vềMacro Security cần được thiết lập như sau. Trong thẻ Developer, bấm nútMacro SecurityTrong hành lang cửa số Trust Center, thiết lập những lựa chọn như hình vẽhọcExcel. Onlineselect * from [ EXCEL ] 045. Đến bước này, file Excel đang thao tác cần được lưu dưới dạng có hỗ trợMacros hoặc code VBA với phần lan rộng ra là XLSM. Để triển khai việc này, trong Excel, chọn thẻ File > Save as … hoặc sử dụng phím tắt F12 trên bànphímĐến bước này, file Excel đã chuẩn bị sẵn sàng cho việc sử dụng với Macros hoặcVBA. họcExcel. Onlineselect * from [ EXCEL ] 054. Sử dụng tính năng Macro RecorderChức năng Macro Recorder sẽ giúp tất cả chúng ta rất nhiều trong việc học VBA.Để ghi 1 macro tiên phong : chọn thẻ Developer > bấm nút Record MacroBấm núthttps : / / goo.gl/bxGUEmhoặcSCAN MÃĐỂ NHẬN NGAY COUPONGIẢM GIÁ 30 % KHÓA HỌCVBA101 – VBA cơ bản cho ngườimới bắt đầuhọcExcel. Onlineselect * from [ EXCEL ] Khóa học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEm064. Sử dụng tính năng Macro RecorderChức năng Macro Recorder sẽ giúp tất cả chúng ta rất nhiều trong việc học VBA.Để ghi 1 macro tiên phong : chọn thẻ Developer > bấm nút Record MacroTrong hộp thoại Record Macro, tất cả chúng ta hoàn toàn có thể đặt tên cho Macro hoặcgán phím tắt và viết miêu tả cho Macro đó. Ở đây, để liên tục ta bấm nútOK. họcExcel. Onlineselect * from [ EXCEL ] 07T rong quy trình ghi code Macro, thao tác của bạn ở hành lang cửa số bên tay trái sẽ được công dụng Record Macro ghi lạitrong Macro1 ( ) bên tay phảihọcExcel. Onlineselect * from [ EXCEL ] 08M ặc định, Macro tạo ra sẽ được ghi trong Module 1 như hình minh họa. Trong quy trình học VBA bằng cách ghi Macro, những bạn nên để hành lang cửa số Excelvà cửa số soạn thảo VBA song song, khi đó bạn hoàn toàn có thể nhìn thấy thao tácnào trên hành lang cửa số Excel sẽ được ghi lại bởi Macro thế nào. Sau khi kết thúc việc ghi Macro, tất cả chúng ta cần bấm vào thẻ Developer 1 lầnnữa và bấm nút Stop RecordingKhoá học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEmhọcExcel.Onlineselect * from [ EXCEL ] Khóa học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEm09Viết những dòng code đầu tiên1. Để viết hoặc chỉnh sửa code VBA trong Excel, trình soạn thảo VBA trongExcel sẽ tương hỗ việc này. Để mở trình soạn thảo VBA ( Visual Basic Editor, viết tắt VBE ), tất cả chúng ta sử dụng thẻ Developer, rồi bấm nút Visual Basic nhưhình minh họa hoặc bấm tổng hợp phím tắt ALT + F11Cửa sổ soạn thảo VBA trông sẽ như thế nàyCửa sổ Locals, sẽ giúp bạn theo dõi những đối tượngvà biến số trong quy trình chạy code VBA.Cách mở : Menu View > LocalsCửa sổ Project biểu lộ thông tin tương quan đến cácđối tượng bảng tính, files, formCách mở : Menu View > Project ExplorerCửa sổ Properties biểu lộ những thuộc tính của đốitượng đang được chọn. Chúng ta hoàn toàn có thể thay đổithuộc tính của những đối tượng người tiêu dùng trực tiếp trong cửa sổnàyCách mở : Menu View > Properties WindowĐây là hành lang cửa số Immediate ( Cách mở : Menu View > Immediate Window ) Cửa sổ Immediate Window là nơi tất cả chúng ta có thểthử code VBA hoặc hiển thị nội dung của lệnhDebug. PrinthọcExcel. Onlineselect * from [ EXCEL ] 102. Module sẽ là nơi chứa code VBA, để tạo 1 Module mới, trong VBE, chọnmenu Insert > Module. Tổ hợp phím tắt để tạo 1 Module mới là ALT + I + M3. Module mới được tạo ra sẽ có tên mặc định là Module1. Tên của Modulenày hoàn toàn có thể được đổi trong hành lang cửa số Properties > thuộc tính ( Name ) GIẢM NGAY 30 % https://goo.gl/bxGUEmKhoá họcVBA CHO NGƯỜI MỚI BẮT ĐẦUhọcExcel. Onlineselect * from [ EXCEL ] Khóa học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEm114. Click đúp vào Module mới tạo ra, tất cả chúng ta hoàn toàn có thể soạn thảo đoạn codeVBA đầu tiên5. Để chạy đoạn code này, tất cả chúng ta hoàn toàn có thể click chuột trái vào bên trongSub macroDauTien ( ), hoàn toàn có thể là ngay trước chữ “ MsgBox ” rồi chọnmenu Run > Run Sub / UserFormhọcExcel. Onlineselect * from [ EXCEL ] 126. Sau khi chạy đoạn Macro tiên phong, tác dụng là 1 thông tin trong ExcelĐến bước này, nếu bạn nhận được thông tin như vậy, nghĩa là môi trườnglập trình VBA của bạn đã được thiết lập thành công xuất sắc và bạn hoàn toàn có thể bắt đầuthực hiện việc lập trình VBA hoặc tạo ra những Macro của riêng mình. Ở lầntới, khi bạn mở 1 file Excel có chứa Macro hoặc code VBA, bạn sẽ nhận đượcthông báo như sau, bạn chỉ cần bấm nút Enable Content là hoàn toàn có thể sử dụngđược Macro đã lưu trong file rồi. Khóa học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEmhọcExcel.Onlineselect * from [ EXCEL ] 135. Ứng dụng của VBA / MacrosXLSXLSXLSXLS1. Tách 1 file Excel ra nhiều files Excel2. Tách 1 sheet Excel ra nhiều sheets Excel3. Gửi thư hàng loạt qua Outlook tự động4. Tạo báo cáo giải trình tự động hóa, lấy số liệu, định dạng số liệu5. Tạo nhiều files Word lấy thông tin từ 1 file Excel6. Tạo nhiều files PowerPoint lấy thông từ 1 file Excel7. Tổng hợp tài liệu từ nhiều files Excel vào 1 file Excel8. Tổng hợp tài liệu từ nhiều sheets Excel vào 1 file Excel9. Xử lý tài liệu từ nhiều nguồn, nhiều định dạng 1 cách tự động10. … và rất nhiều ứng dụng khác những bạn sẽ được trình làng trong suốt những khoáhọc từ Học Excel OnlinehọcExcel. Onlineselect * from [ EXCEL ] 146. Làm việc với đối tượng người dùng WorkbookWorkbook hay file Excel, tệp Excel là đối tượng người tiêu dùng tiên phong bạn chăm sóc tớivà được tiếp xúc khi lập trình VBA, trong chương này, tất cả chúng ta sẽ đi làmviệc với đối tượng người tiêu dùng Workbook và tìm hiểu và khám phá 1 số thuộc tính cơ bản của đốitượng này. Trong sách này ở phần phía sau, những bạn sẽ dựa vào kiến thứcchương này để hoàn toàn có thể tách gộp được nhiều files Excel ship hàng cho mục đíchcủa mình. Vậy nên, hãy quan tâm vào những thuộc tính mà đối tượng người dùng Workbookhỗ trợ. Để học những kiến thức và kỹ năng này 1 cách trực quan và sinh động hơn, hãy click linktới khóa học ở phía dưới. Mong hẹn gặp những bạn trong khóa học. Bấm núthttps : / / goo.gl/bxGUEmhoặcSCAN MÃĐỂ NHẬN NGAY COUPONGIẢM GIÁ 30 % KHÓA HỌCVBA101 – VBA cơ bản cho ngườimới bắt đầuhọcExcel. Onlineselect * from [ EXCEL ] Khóa học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEm156. Làm việc với đối tượng người tiêu dùng WorkbookTruy cập một số ít thuộc tính cơ bản của WorkbookĐể bắt đầu thao tác với đối tượng người tiêu dùng Workbook trong Excel, bạn hoàn toàn có thể thửnhững dòng code sau đây trong 1 thủ tục ( Sub ) được lưu ở trong 1 ModuleÝ nghĩa của từng câu lệnh như thế nào thì có lẽ rằng những bạn cũng đã đoánđược : Range ( ” A1 ” ) = This Workbook. FullName ↳ Câu lệnh này ghi đường dẫn vừa đủ đến Workbook chứa macro vàovùng A1Range ( ” A2 ” ) = This Workbook. Name ↳ Câu lệnh này ghi tên của Workbook hoặc file Excel gồm có cả phầnmở rộng vào vùng A2Range ( ” A3 ” ) = This Workbook. Path ↳ Câu lệnh này ghi đường dẫn tới thư mục lưu Workbook hoặc file Excelhiện thời vào vùng A3họcExcel. Onlineselect * from [ EXCEL ] 16M ột số thao tác cơ bản với WorkbookMở WorkbookThủ tục sau đây sẽ mở 1 Workbook biết đường dẫn tới Workbook đó đượclưu trong vùng A1. Hãy thử Sub này trong Module của 1 file Excel bạn mớitạo ra. Workbooks. Open Filename : = { đường dẫn tới file excel } ↳ Câu lệnh này sẽ mở File Excel được lưu ở trong đường dẫnĐóng WorkbookWorkbooks. Close SaveChanges : = True ↳ Câu lệnh này sẽ đóng 1 Workbook và lưu những đổi khác được thực hiệntrên Workbook đó. Nếu thay True bằng False thì Workbook sẽ đượcđóng, đổi khác sẽ không được lưuKhoá học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEmhọcExcel.Onlineselect * from [ EXCEL ] Khóa học VBA cơ bản cho người mới bắt đầuClick link giảm giá 30 % : https://goo.gl/bxGUEm17Tạo mới WorkbookĐể tạo mới 1 Workbook, tất cả chúng ta hoàn toàn có thể sử dụng câu lệnh VBA sau trong 1S ubWorkbooks. Add ↳ Câu lệnh này sẽ tạo mới 1 WorkbookLưu Workbook với 1 tên khác ( Save as … ) Để lưu Workbook chứa code VBA dưới 1 tên khác, ta hoàn toàn có thể thực thi đoạncode sau đâyThisWorkbook. SaveAs ” C : \ Users \ thanh \ Desktop \ a.xlsm ” ↳ Câu lệnh này sẽ lưu Workbook có chứa đoạn code VBA xấp xỉ tên làa. xlsm tại đường dẫn chỉ địnhhọcExcel. Onlineselect * from [ EXCEL ] 18 Đếm số lượng Workbook, in đường dẫn ra hành lang cửa số ImmediateTrong 1 thời gian, hoàn toàn có thể nhiều file Excel sẽ cùng được mở trên máy tínhcủa bạn, để đếm được số lượng Workbook hoặc in đường dẫn tới cácWorkbook đó tất cả chúng ta hoàn toàn có thể có 1 số đoạn code như sauDebug. Print Workbooks. Count ↳ Câu lệnh này sẽ ghi số lượng Workbooks đang mở ra hành lang cửa số ImmediateDebug. Print Workbooks ( 2 ). FullName ↳ Câu lệnh này sẽ ghi tên khá đầy đủ và đường dẫn tới Workbooks thứ 2 đang được mởDebug. Print Workbooks ( Workbooks. Count ). FullName ↳ Câu lệnh này sẽ ghi tên rất đầy đủ và đường dẫn tới Workbooks cuối cùngđược mởhọcExcel. Onlineselect * from [ EXCEL ] 197. Làm việc với đối tượng người dùng WorksheetNgoài Workbook là đối tượng người tiêu dùng tất cả chúng ta đã nhắc đến trong chương trước, đốitượng Worksheet chỉ những bảng tính trong file Excel của tất cả chúng ta là nơichúng ta tàng trữ và giải quyết và xử lý hầu hết tài liệu. Các thao tác với Worksheet cùngcác thuộc tính của đối tượng người tiêu dùng này sẽ được trình diễn trong những trang tiếptheo của tài liệuBấm núthttps : / / goo.gl/Pe3ExkhoặcSCAN MÃĐỂ NHẬN NGAY COUPONGIẢM GIÁ 30 % KHÓA HỌCVBA201 – Lập trình VBA nângcao trong ExcelhọcExcel. Onlineselect * from [ EXCEL ] 207. Làm việc với đối tượng người tiêu dùng WorksheetCác cách tham chiếu tới Worksheet trong ExcelTrước khi truy vấn vào những thuộc tính của đối tượng người tiêu dùng Worksheet trong Excel, bạn cần tham chiếu đến đối tượng người tiêu dùng này. Để tham chiếu tới Worksheet trongExcel, bạn hoàn toàn có thể sử dụng 1 số cách sau đâyDebug. print Worksheets ( 1 ). Name ↳ Câu lệnh này ghi tên của Worksheet ngoài cùng bên trái ra cửa sổImmediate. Đây là cách tham chiếu theo thứ tựDebug. print Worksheets. Count ↳ Câu lệnh này ghi ra hành lang cửa số Immediate số lượng Sheets trong WorkbookDebug. print Worksheets ( Worksheets. Count ). Name ↳ Câu lệnh này ghi ra hành lang cửa số Immediate tên của Sheets ngoài cùng bênphải trong Workbook – “ Bang 7 ” Worksheets. Count trả về số lượng Worksheets trong Workbook hiệnthờihọcExcel. Onlineselect * from [ EXCEL ] 21T ham chiếu tới Worksheets bằng code name : trong trình soạn thảo VBA, hành lang cửa số Project – VBAProject, bạn nhìn thấy Sheet1 ( Bang 1 ). Ở đây, Sheet1là code name của đối tượng người tiêu dùng bảng tính này, còn “ Bang 1 ” là tên của bảngtính đó. Debug. print Sheet1. Name ↳ Câu lệnh này ghi tên của bảng tính có code name là Sheet1 ra cửa sổImmediate. Đây là cách tham chiếu theo code name. Debug. print Worksheets ( “ Bang 1 ” ). Name ↳ Câu lệnh này ghi tên của bảng tính có tên là “ Bang 1 ” ra cửa sổImmediate. Đây là cách tham chiếu theo tên bảng tínhThêm 1 WorksheetDebug. print Worksheets. Add ↳ Thêm 1 worksheet mớiDebug. print Worksheets. Add Count : = 3 ↳ Thêm 3 worksheet mớiDebug. print Worksheets. Add Before : = Worksheets ( 1 ) ↳ Thêm 1 worksheet mới, phía bên trái Worksheet đầu tiênDebug. print Worksheets. Add After : = Worksheets ( 3 ) ↳ Thêm 1 worksheet mới, phía bên phải Worksheet thứ 3C opy 1 WorksheetSheet1. copy After : = Worksheets ( 3 ) ↳ Copy bảng tính với code name Sheet1, bản copy được đặt phía sauWorksheet thứ 3S heet1.copy Before : = Worksheets ( 3 ) ↳ Copy bảng tính với code name Sheet1, bản copy được đặt phía trướcWorksheet thứ 3 họcExcel. Onlineselect * from [ EXCEL ] 22X óa 1 WorksheetSheet1. Delete ↳ Câu lệnh này sẽ xóa bảng tính có code name là Sheet1, khi thực hiệncâu lệnh này, Excel sẽ hỏi để xác nhận lại, để bỏ quan xác nhận và thựchiện thao tác xóa bảng tính, code như sauApplication. DisplayAlerts = FalseSheet1. DeleteApplication. DisplayAlerts = True ↳ Xóa bảng tính với code name Sheet1, bỏ lỡ hộp thoại xác nhận củaExcel về việc xoáSửa tên 1 WorksheetSheet1. Name = “ New Name ” ↳ Câu lệnh này sẽ đổi tên bảng tính có code name là Sheet1 thành “ NewName ” GIẢM NGAY 30 % https://goo.gl/bxGUEmKhoá họcVBA CHO NGƯỜI MỚI BẮT ĐẦUẨn / Hiện 1 bảng tínhSheet1. Visible = xlSheetHidden ↳ Câu lệnh này sẽ ẩn bảng tính có code name là Sheet1Sheet1. Visible = xlSheetVisible ↳ Câu lệnh này sẽ hiện bảng tính có code name là Sheet1Sheet1. Visible = xlSheetVeryHidden ↳ Câu lệnh này sẽ ẩn bảng tính có code name là Sheet1. Chế độ ẩn nàylàm cho bảng tính không hề được bỏ ẩn theo cách bấm chuột phải vàotên sheet > Unhide … trên giao diện của Excel

Source: https://vh2.com.vn
Category : Tin Học