Tổng số lượt xem trang

Thứ Sáu, 10 tháng 3, 2017

TỰ HỌC VBA: ĐỊNH VỊ ĐẾN CELL, SHEET, BẢNG TÍNH

           Khi mở một file bảng tính để làm việc ta thấy ô được chọn là ô A1 ở Sheet1, nếu ta gõ trên bàn phím một giá trị, chẳng hạn số 35, thì giá trị đó dược nhập vào ô A1. Ta nói ô A1 là ô tính được chọn hay ô tính đang hoạt động, sheet1 là sheet hoạt động hay sheet được chọn. Bây giờ ta dùng chuột hay các phím mũi tên để di chuyển đến một ô khác, ô B3 chẳng hạn, thì lúc này B3 là ô được chọn hay ô tính đang hoạt động.
           Bây giờ ta dùng chuột chọn sheet2 ta sẽ thấy ô được chọn là ô A1 của sheet2, bây giờ sheet2 là sheet được chọn hay sheet hoạt động. Trong khi lập trình vì mọi việc là tự động (không phải nháy chuột hay dùng phím mũi tên để di chuyển) nên ta phải biết rõ mình đang chọn cell (ô) nào, đang chọn sheet nào hay cell nào đang là cell hoạt động, sheet nào đang là sheet hoạt động. Đó chính là vấn đề định vị đến cell, sheet.
           Chúng ta xem một số dòng lệnh dưới đây:
    Range("B11").Select
    Sheets("Trang2").Select
    Range("C5").Select
    Sheets("Trang1").Select
         Dòng lệnh thứ nhất chọn ô B11 (của sheet hoạt động hay sheet hiện hành) làm ô hoạt động.
         Dòng lệnh thứ hai chọn sheet có tên là Trang2 làm sheet hoạt động.
         v.v...
   
A1


A2

Để thấy ý nghĩa của việc định vị đến cell và sheet ta xét ví dụ như sau:
     Có một bảng tính gồm 2 trang (2 sheet) trong đó trang 2 ghi điểm thi (xem ảnh A2), trang 1 ghi tổng hợp điểm (xem ảnh A1). Công việc cần làm là:
      -Chuyển đến trang 2, tổng hợp kết quả, lưu vào một mảng hai chiều.
      -Chuyển đến trang 1, ghi kết quả trong mảng vào trang tính (theo mẫu như ở hình A1).
      
           Bây giờ ta nói tới bảng tính:
           Một bảng tính bao gồm nhiều trang tính (sheet)
           Trong lập trình có khi bạn cần mở nhiều bảng tính để làm việc. Muốn làm việc việc ở bảng tính nào bạn phải định vị đến bảng tính đó.
        Giả sử bạn đang mở 2 bảng tính (file) là ViDu.xlsm và VDu.xlsx và bạn đang ở bảng tính có tên là ViDu.xlsm , trong bảng tính này có macro có tên là macro3 như dưới đây.
            Sub Macro3()
                     Windows("VDu.xlsx").Activate
            End Sub
Khi bạn chạy macro trên bạn sẽ thấy đã được chuyển đến bảng tính có tên là VDu.xlsx.
Như vậy câu lệnh để định vị đến bảng tính (hay file bảng tính)
Có dạng: Windows("tên bảng tính").Activate.
Trong đó tên bảng tính là tên được chỉ ra.
Tóm lại ở bài này chúng ta nói tới ba câu lệnh:
-Chọn một ô: Range("tên ô").select                   (có thể là cả một vùng ô)
-Chọn một sheet: Sheets("tên sheet").Select
-Chọn một bảng tính (file bảng tính): Windows("tên bảng tính").Activate