Làm thế nào để sử dụng cửa sổ Watch trong VBA

aiminhtranguyen

Thành viên mới
Tham gia ngày
26 Tháng mười một 2019
Bài viết
1
Được thích
0
Điểm
13
Tuổi
29
Chào các Anh/Chị. Em đang tập tành về vba, anh/ chị vui lòng chỉ dẫn em cách dùng Watch trong vba và cho em 1 vài ví dụ để em dễ hiểu.
Xin cảm ơn.

Lời đề nghị của em có gì chưa rõ xin các anh/chị chỉ bảo.
 

HeSanbi

Thành viên tích cực
Tham gia ngày
24 Tháng hai 2013
Bài viết
1,174
Được thích
1,050
Điểm
560
Bạn muốn biết cách sử dụng cửa sổ Watches, nhưng bạn hiểu nghĩa của "Watches trong VBA" là gì chưa.
Đơn giản là để xem giá trị của một khai báo, một biến, một giá trị của Object,... thay đổi.
Các phương pháp đi kèm như:

Compile <Project>: Kiểm tra lỗi cú pháp
Step into (F8): Debug từng dòng
Step Over (Shift+F8): Debug
Step Out (Ctrl+Shift+F8): Nhảy ra khỏi Hàm đang Debug
Run To Cursor (Ctrl+F8): Nhảy đến vị trí con trỏ chuột đang đặt
Add Watch...: Thêm biến rà soát vào Watch.
Edit Watch... (Ctrl+W): Sửa Watch
Quick Watch... (Shift+F9): Xem nhanh giá trị đã thêm vào Watch
Toggle Breakpoint (F9): Đặt Break Point ngay vị trí con trỏ hoặc Click chuột vào trước đầu dòng. Khi thực hiện một thủ tục tiến trình sẽ dừng tại Break Point đã đặt.
Clear All Breakpoints (Ctrl+Shìft+F9): Xóa hết Break Point
Khi Debug rê chuột vào một biến bất kì nằm trước một Break để xem giá trị hoặc kiểu giá trị.

Để thay thế cửa sổ Watches bạn có thể sử dụng câu lệnh Debug.Print đi kèm dấu chấm phẩy (In ra không xuống dòng) hoặc dấu phẩy (In ra giảng cách một khoảng) và cửa sổ Immediate.
Các hàm hỗ trợ hoặc toán tử để Debug dễ dàng hơn như TypeName(), Not <Object> Is <Object>, TypeOf <Object> Is <Object>

Hoặc sử dụng cửa sổ Locals để xem toàn bộ giá trị tất cả các biến được sử dụng trong một Thủ tục.

Cách sử dụng Watches:
PHP:
Sub Test()
Dim I As Integer, K As Long
Do Until I > 10
    K = I * 20
    I = I + 1
    'Debug.Print "K= "; K, "I= "; I'
Loop
End Sub
Chuột phải vào biến K -> Add Watch, đặt Break Point vào hàng I = I + 1 và Chạy sub Test hoặc đặt con trỏ chuột vào trong Sub Test nhấn F8 liên tục để Debug, đồng thời mở cửa sổ Watches lên để xem giá trị K thay đổi.


Tương tự Chuột phải vào biến I -> Add Watch.
 

Hau151978

Thành viên tích cực
Tham gia ngày
19 Tháng mười 2011
Bài viết
1,274
Được thích
1,115
Điểm
560
Cửa sổ watch có các tác dụng:
- Xem giá trị biến khi chương trình chạy (việc này cửa sổ Local đã hiện đầy đủ các biến), xem giá trị của biểu thức.
- Ngắt chương trình khi giá trị biểu thức thay đổi hoặc = true.
Nói chung, cửa sổ watch thường sử dụng để debug chương trình có sử dụng vòng lặp mà ta cần ngắt giữa chừng theo điều kiện nào đó.
 
Top Bottom