Bài 2: Tìm hiểu các phương thức (Methods) trong VBA

Bài 2: Tìm hiểu các phương thức (Methods) trong VBA
  1. Khái niệm Phương thức là gì?

Phương thức là một dạng chương trình gắn liền với đối tượng nhằm thực hiện một hay nhiều hành động. Phương thức không trả về giá trị như thuộc tính.

Bạn không thể gán giá trị cho phương thức nhưng có thể truyền các giá trị (Tham số).  Mỗi điều khiển sẽ có phương thức khác nhau, nhưng vẫn có phương thức rất thông dụng cho hầu hết các điều khiển. Ngoài ra, phương thức có những tham số lựa chọn riêng để chỉ hành động như thế nào.

2. Cú pháp của phương thức

+ Phương thức không chứa tham số: Object.Method

+ Phương thức chứa tham số:  Object.Method (tham số 1, tham số 2, …., tham số n)

3. Một số phương thức hay sử dụng.

a. Phương thức Select :

Dùng để chọn một khoảng nhiều ô (Giống như việc thực hiện bôi đen trong excel)

Ví dụ:  chọn vùng  “A1:A12” của worksheet đang hoạt động

                           Range(“A1:A12”) . select

  • Lưu ý: Trước khi chọn một vùng thuộc Worksheet nào đó thì bạn phải làm Worksheet đó được kích hoạt trước. Nếu không dòng lệnh sẽ chọn một vùng trong Worksheet nào đó đang kích hoạt ngoài ý muốn hoặc có lỗi xảy ra trong khi bạn viết VBA
  • Ví dụ: Để chọn vùng : “A1:A12” trong sheet1 thuộc “bosung.xls” bạn thực hiện dòng lệnh sau

   Worbook(“bosung.xls”).active   ‘ kích hoạt workbook bosung.xls

                    Sheets(“Sheet1”).active               ‘ Kích hoạt sheet sheet1

                    Range(“A1:A12”).select              ‘Chọn vùng A1: A12

+ Ngoài ra phương thức Select có thể chọn nhiều vùng cùng 1 lúc ví dụ chọn vùng “C2:D5” và “G10: K20”

                  Range(” C2:D5, G10:K20″).selcet

b. Phương thức Copy và Paste

– Bạn có thể copy hoặc sao chép trong VBA bằng phương thức Copy và Paste.

– Tuy nhiên: Phương thức copy được áp dụng cho đối tượng Range  nhưng phương thức Paste dùng cho đối tượng Worksheet.

Ví dụ: sao chép vùng “A1:A12” và dán tại vị trí ô C1.

    Sub   copyrange()

             Range(“A1:A12”).Select

                 Selection.Copy

             Range(“C1”).Select

                 ActiveSheet.Paste

            End Sub

 

Ví dụ trên bạn có thể viết ngắn lại như sau:

   Sub copyrange()

        Range(“A1:A12”).Copy Range(“C1”)

       End Sub

c. Phương thức Clear

Phương thức Clear xóa toàn bộ nội dung, định dạng, ghi chú (Comment) trong 1 vùng xác định, trả về giá trị mặc định ban đầu.

Ví dụ: Bạn muốn xóa nội dung và định dạng ở cột D trong Worksheet hiện hành thì dùng lệnh sau

Columns(“D:D”).clear

Ngoài ra bạn có thể lựa chọn các phương thức chi tiết hơn :

+ ClearContents: Chỉ xóa nội dung vùng lựa chọn

+ ClearFormats: Xóa định dạng vùng lựa chọn

+ ClearComments: Xóa ghi chú trong ô

d. Phương thứ Delete

Phương thức Delete dùng để xóa toàn bộ đối tượng được lựa chọn. Khác với phương thức Clear chỉ xóa nội dung và định dạng nhưng vẫn giữ nguyên vùng lựa chọn. Nhưng phương thức Delete làm biến mất hẳn vùng lựa chọn đó và excel sẽ tự động đưa các ô nằm ở bên dưới khoảng này lên (hay từ bên phải qua bên trái) điền đầy vào khoảng vừa bị xóa

Ví dụ: Rows(“6:6”).Delete

Ví dụ: Ta muốn xóa 1 khoảng  từ C6:C10 và Excel sẽ di chuyển các ô ở bên phải qua bên trái thì ta làm như sau

         Range(“C6:C10”).Delete xlToleft

Trong đó xlToleft là hằng số cho phương thức này. Xem thêm ý nghĩa các hằng số đi kèm câu lệnh

+ xlDown: Hằng số để di chuyển xuống dưới

+ xlToLeft: Hằng số di chuyên sang trái

+ xlToRight: Hằng số di chuyển sang phải

+ xlUp: Hằng số di chuyển lên trên

Categories: Giáo trình, Học VBA

Write a Comment

<