Giáo trình hướng dẫn nghiên cứu các phương pháp lập trình trên microsoft access marco p9
Số trang: 5
Loại file: pdf
Dung lượng: 753.16 KB
Lượt xem: 5
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tham khảo tài liệu giáo trình hướng dẫn nghiên cứu các phương pháp lập trình trên microsoft access marco p9, công nghệ thông tin, tin học văn phòng phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
Giáo trình hướng dẫn nghiên cứu các phương pháp lập trình trên microsoft access marco p9 CHƯƠNGIV:LẬPTRÌNHTRÊNMICROSOFTEXCELActivate Worksheet được chọn làm worksheet hiện hànhBeforeDoubleClick Người dùng kích đúp chuột trên sheet. Sự kiện này xảy ra ngay trước khi kích đúp.BeforeRightClick Ngay trước khi người dùng kích phải chuột trên sheetCalculate Khi trên workshet có thực hiện tính toán nào đóChange Khi một ô nào đó trong worksheet bị thay đổiDeactivate Worksheet không còn hiện hànhFollowHyperlink Người dùng kích chuột vào một siêu liên kết trong worksheetSelectionChange Khi người dùng thay đổi vùng lựa chọn trên worksheetCần phải lưu ý là mã lệnh của các bộ xử lý sự kiện của worksheet phải được đặt trong mô-đunmã lệnh của worksheet tương ứng.SựkiệnChangeSự kiện Change xảy ra khi có một ô nào đó trong worksheet bị thay đổi. Sự kiện này sẽ khôngxảy ra khi quá trình tự động tính toán của Excel làm thay đổi giá trị của ô, hoặc khi chèn mộtđối tượng vào trong worksheet.Khuôn mẫu của bộ xử lý sự kiện Change như sau:Private Sub Worksheet_Change(ByVal Target As Range) ‘Mã lệnh sẽ được đặt ở đâyEnd SubTham số Giải thíchTarget Tham số kiểu Range, là ô/vùng dữ liệu bị thay đổiKhi thủ tục Worksheet_Change được thực thi (nghĩa là khi sự kiện xảy ra), thủ tục này sẽ nhậnđược một đối tượng kiểu Range được truyền thông qua tham số Target. Đối tượng này có thể làmột ô hoặc một vùng dữ liệu đã bị thay đổi. Ví dụ sau sẽ hiển thị một hộp thông báo thể hiệnđịa chỉ của ô đã bị thay đổi (địa chỉ của đối tượng Target): Private Sub Worksheet_Change(ByVal Target As Excel.Range) MsgBox “Vùng dữ liệu “ & Target.Address & “ đã thay đổi.” End SubĐể có thể hiểu rõ hơn các loại thao tác làm phát sinh sự kiện Change của workshet, nhập đoạnmã trên vào trong mô-đun mã lệnh của worksheet. Sau khi nhập xong đoạn mã lệnh trên, quaytrở lại Excel và thực hiện thay đổi worksheet bằng nhiều cách khác nhau. Mỗi khi sự kiệnChange xảy ra, một hộp thông báo sẽ được hiện lên thông báo địa chỉ của vùng dữ liệu đã bị tácđộng. Khi thực hiện theo cách như vậy, ta có thể tình cờ phát hiện ra nhiều điều thú vị về sựkiện này. Một số thao tác làm phát sinh sự kiện, nhưng một số thao tác khác lại không như thế: Thay đổi định dạng của ô không làm phát sinh sự kiện Change như mong đợi, nhưng nếu sử dụng trình đơn Edit Clear Formats thì lại làm phát sinh sự kiện này. Thêm, hiệu chỉnh hoặc xoá chú thích của các ô không làm phát sinh sự kiện Change. Nhấn phím DEL trên bàn phím sẽ làm phát sinh sự kiện Change (mặc dù ô hiện tại đang là một ô trắng). 143 Những ô bị thay đổi khi sử dụng các lệnh của Excel có thể có hoặc không làm phát sinh sự kiện này. Ví dụ, chọn trình đơn Data Form và Data Sort không làm phát sinh sự kiện. Nhưng nếu chọn trình đơn Tools Spelling và Edit Replace thì lại làm phát sinh sự kiện này. Nếu trong các chương trình con của VBA có làm thay đổi một ô nào đó thì sẽ làm phát sinh sự kiện Change. Rõ ràng, sự kiện Change khá phức tạp và có thể có tính chất khác nhau tuỳ theo từng phiên bản của Excel. Tuy nhiên, sự kiện này lại rất hữu ích, đặc biệt là những ứng dụng quan trọng, đòi hỏi cần phải có sự kiểm tra, giám sát đến giá trị của từng ô. Sự kiện Change phát sinh khi có một ô nào đó bị thay đổi, nhưng thông thường người lập trình chỉ cần quan tâm đến một vùng nào đó trong worksheet mà thôi. Ví dụ sau sẽ thực hiện giám sát một vùng dữ liệu có tên là SoLieu trong worksheet. Nếu người dùng làm thay đổi giá trị bất kỳ ô nào trong vùng này, chương trình sẽ xuất hiện thông báo cho người dùng: Private Sub Worksheet_Change(ByVal Target As Range) Dim VRange As Range Set VRange = Range(SoLieu) If Not Intersect(Target, VRange) Is Nothing Then MsgBox Ô thay đổi nằm trong vùng dữ liệu: SoLieu. End If End Sub Ví dụ trên sử dụng biến kiểu Range có tên là VRange, thể hiện cho vùng dữ liệu cần giám sát sự thay đổi (là vùng dữ liệu có tên là SoLieu). Thủ tục này còn sử dụng hàm Intersect của VBA, là hàm tìm giao của hai vùng dữ liệu, để kiểm tra xem vùng dữ liệu Target (được truyền qua tham số của sự kiện) có nằm trong vùng dữ liệu VRange hay không. Hàm Intersect trả về giá trị Nothing có nghĩa là hai vùng dữ liệu đó không có ô nào chung nhau. Do có sử dụng toán tử Not nên biểu thúc “Not Intersect(Target, VRange) Is Nothing” sẽ trả về giá trị TRUE nếu hai vùng dữ liệu có ít nhất một ô chung nhau. Vì vậy, nếu vùng dữ liệu bị thay đổi có chung ô nào đó với vùng dữ liệu tên là SoLieu thì chương trình sẽ hiển thị hộp thông báo. C ...
Nội dung trích xuất từ tài liệu:
Giáo trình hướng dẫn nghiên cứu các phương pháp lập trình trên microsoft access marco p9 CHƯƠNGIV:LẬPTRÌNHTRÊNMICROSOFTEXCELActivate Worksheet được chọn làm worksheet hiện hànhBeforeDoubleClick Người dùng kích đúp chuột trên sheet. Sự kiện này xảy ra ngay trước khi kích đúp.BeforeRightClick Ngay trước khi người dùng kích phải chuột trên sheetCalculate Khi trên workshet có thực hiện tính toán nào đóChange Khi một ô nào đó trong worksheet bị thay đổiDeactivate Worksheet không còn hiện hànhFollowHyperlink Người dùng kích chuột vào một siêu liên kết trong worksheetSelectionChange Khi người dùng thay đổi vùng lựa chọn trên worksheetCần phải lưu ý là mã lệnh của các bộ xử lý sự kiện của worksheet phải được đặt trong mô-đunmã lệnh của worksheet tương ứng.SựkiệnChangeSự kiện Change xảy ra khi có một ô nào đó trong worksheet bị thay đổi. Sự kiện này sẽ khôngxảy ra khi quá trình tự động tính toán của Excel làm thay đổi giá trị của ô, hoặc khi chèn mộtđối tượng vào trong worksheet.Khuôn mẫu của bộ xử lý sự kiện Change như sau:Private Sub Worksheet_Change(ByVal Target As Range) ‘Mã lệnh sẽ được đặt ở đâyEnd SubTham số Giải thíchTarget Tham số kiểu Range, là ô/vùng dữ liệu bị thay đổiKhi thủ tục Worksheet_Change được thực thi (nghĩa là khi sự kiện xảy ra), thủ tục này sẽ nhậnđược một đối tượng kiểu Range được truyền thông qua tham số Target. Đối tượng này có thể làmột ô hoặc một vùng dữ liệu đã bị thay đổi. Ví dụ sau sẽ hiển thị một hộp thông báo thể hiệnđịa chỉ của ô đã bị thay đổi (địa chỉ của đối tượng Target): Private Sub Worksheet_Change(ByVal Target As Excel.Range) MsgBox “Vùng dữ liệu “ & Target.Address & “ đã thay đổi.” End SubĐể có thể hiểu rõ hơn các loại thao tác làm phát sinh sự kiện Change của workshet, nhập đoạnmã trên vào trong mô-đun mã lệnh của worksheet. Sau khi nhập xong đoạn mã lệnh trên, quaytrở lại Excel và thực hiện thay đổi worksheet bằng nhiều cách khác nhau. Mỗi khi sự kiệnChange xảy ra, một hộp thông báo sẽ được hiện lên thông báo địa chỉ của vùng dữ liệu đã bị tácđộng. Khi thực hiện theo cách như vậy, ta có thể tình cờ phát hiện ra nhiều điều thú vị về sựkiện này. Một số thao tác làm phát sinh sự kiện, nhưng một số thao tác khác lại không như thế: Thay đổi định dạng của ô không làm phát sinh sự kiện Change như mong đợi, nhưng nếu sử dụng trình đơn Edit Clear Formats thì lại làm phát sinh sự kiện này. Thêm, hiệu chỉnh hoặc xoá chú thích của các ô không làm phát sinh sự kiện Change. Nhấn phím DEL trên bàn phím sẽ làm phát sinh sự kiện Change (mặc dù ô hiện tại đang là một ô trắng). 143 Những ô bị thay đổi khi sử dụng các lệnh của Excel có thể có hoặc không làm phát sinh sự kiện này. Ví dụ, chọn trình đơn Data Form và Data Sort không làm phát sinh sự kiện. Nhưng nếu chọn trình đơn Tools Spelling và Edit Replace thì lại làm phát sinh sự kiện này. Nếu trong các chương trình con của VBA có làm thay đổi một ô nào đó thì sẽ làm phát sinh sự kiện Change. Rõ ràng, sự kiện Change khá phức tạp và có thể có tính chất khác nhau tuỳ theo từng phiên bản của Excel. Tuy nhiên, sự kiện này lại rất hữu ích, đặc biệt là những ứng dụng quan trọng, đòi hỏi cần phải có sự kiểm tra, giám sát đến giá trị của từng ô. Sự kiện Change phát sinh khi có một ô nào đó bị thay đổi, nhưng thông thường người lập trình chỉ cần quan tâm đến một vùng nào đó trong worksheet mà thôi. Ví dụ sau sẽ thực hiện giám sát một vùng dữ liệu có tên là SoLieu trong worksheet. Nếu người dùng làm thay đổi giá trị bất kỳ ô nào trong vùng này, chương trình sẽ xuất hiện thông báo cho người dùng: Private Sub Worksheet_Change(ByVal Target As Range) Dim VRange As Range Set VRange = Range(SoLieu) If Not Intersect(Target, VRange) Is Nothing Then MsgBox Ô thay đổi nằm trong vùng dữ liệu: SoLieu. End If End Sub Ví dụ trên sử dụng biến kiểu Range có tên là VRange, thể hiện cho vùng dữ liệu cần giám sát sự thay đổi (là vùng dữ liệu có tên là SoLieu). Thủ tục này còn sử dụng hàm Intersect của VBA, là hàm tìm giao của hai vùng dữ liệu, để kiểm tra xem vùng dữ liệu Target (được truyền qua tham số của sự kiện) có nằm trong vùng dữ liệu VRange hay không. Hàm Intersect trả về giá trị Nothing có nghĩa là hai vùng dữ liệu đó không có ô nào chung nhau. Do có sử dụng toán tử Not nên biểu thúc “Not Intersect(Target, VRange) Is Nothing” sẽ trả về giá trị TRUE nếu hai vùng dữ liệu có ít nhất một ô chung nhau. Vì vậy, nếu vùng dữ liệu bị thay đổi có chung ô nào đó với vùng dữ liệu tên là SoLieu thì chương trình sẽ hiển thị hộp thông báo. C ...
Tìm kiếm theo từ khóa liên quan:
giáo trình đại học tài liệu mạng giáo trình cơ điện giáo trình thiết kế tài liệu kế toánTài liệu liên quan:
-
Giáo trình phân tích một số loại nghiệp vụ mới trong kinh doanh ngân hàng quản lý ngân quỹ p5
7 trang 474 0 0 -
MARKETING VÀ QUÁ TRÌNH KIỂM TRA THỰC HIỆN MARKETING
6 trang 302 0 0 -
122 trang 217 0 0
-
QUY CHẾ THU THẬP, CẬP NHẬT SỬ DỤNG CƠ SỞ DỮ LIỆU DANH MỤC HÀNG HÓA BIỂU THUẾ
15 trang 212 1 0 -
BÀI GIẢNG KINH TẾ CHÍNH TRỊ MÁC - LÊNIN - TS. NGUYỄN VĂN LỊCH - 5
23 trang 210 0 0 -
Giáo trình chứng khoán cổ phiếu và thị trường (Hà Hưng Quốc Ph. D.) - 4
41 trang 200 0 0 -
Giáo trình hướng dẫn phân tích các thao tác cơ bản trong computer management p6
5 trang 200 0 0 -
BÀI GIẢNG LÝ THUYẾT MẠCH THS. NGUYỄN QUỐC DINH - 1
30 trang 176 0 0 -
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG - NGÂN HÀNG ĐỀ THI HẾT HỌC PHẦN HỌC PHẦN: TOÁN KINH TẾ
9 trang 175 0 0 -
Giáo trình phân tích giai đoạn tăng lãi suất và giá trị của tiền tệ theo thời gian tích lũy p10
5 trang 170 0 0