C C H H Ư Ư Ơ Ơ N N G G I I V V : : L L Ậ Ậ P P T T R R Ì Ì N N H H T T R R Ê Ê N N M M I I C C R R O O S S O O F F T T E E X X C C E E L L 123 Muốn thiết lập lại giá trị mặc định (Microsoft Excel), chỉ cần gán giá trị của Caption= “” ColumnsvàRows Là hai tập đối tượng thể hiện tất cả các cột và các hàng trong sheet hiện hành, ta có thể sử dụng để truy cập một cột hoặc một hàng nào đó. Đoạn mã sau sẽ chọn toàn bộ cột C: Application.Columns(3).Select Còn đoạn mã sau sẽ chọn toàn bộ hàng thứ 9: Application.Rows(9).Select Dialogs Dialogs là tập đối tượng chứa tất cả các hộp thoại đã được định nghĩa sẵn trong Excel. Chi tiết về tập đối tượng này, tham khảo mục “Các hộp thoại mặc định trong Excel – Tập đối tượng Dialogs” trang 167. Help Phương thức này hiển thị tệp trợ giúp do người dùng chỉ định. Application.Help "C:\Program Files\" & _ "Microsoft Office\OFFICE11\1033\VBAXL10.CHM" Nếu không chỉ ra tệp trợ giúp, phương thức này sẽ hiển thị tệp trợ giúp mặc định trong Excel. Quit Phương thức này sẽ đóng chương trình Excel lại, giống như khi lựa chọn trình đơn FileÖExit. Chương trình sẽ nhắc người dùng lưu lại các tệp chưa được lưu. Application.Quit RecentFiles RecentFiles là tập đối tượng lưu giữ những tệp mở sau cùng nhất trong Excel. Mỗi đối tượng trong tập đối tượng RecentFiles có kiểu dữ liệu là RecentFile. Ví dụ sau sẽ hiển thị lần lượt tên của các tệp mở sau cùng nhất trong Excel: Public Sub RecentFile() Dim myRecentFile As RecentFile For Each myRecentFile In Application.RecentFiles MsgBox myRecentFile.Path Next myRecentFile End Sub Selection Thuộc tính này thể hiện cho đối tượng đang được chọn trong Excel. Kiểu dữ liệu trả về của thuộc tính này tuỳ thuộc vào đối tượng được chọn. Nếu đối tượng chọn là các ô, biểu đồ, hoặc một đường thẳng thì kiểu dữ liệu trả về tương ứng sẽ là Range, ChartArea, Line Vì vậy khi lập trình, cần phải chú ý kiểm tra kiểu dữ liệu trả về của thuộc tính này để có các thao tác hợp lý, tránh lỗi xảy ra khi thực thi chương trình. Ví dụ sau sẽ hiển thị địa chỉ của các ô đang được chọn trong Excel: 124 Dim mySelection As Variant Set mySelection = Selection If TypeName(mySelection) = "Range" Then ‘Kiểm tra kiểu dữ liệu MsgBox mySelection.Address Else MsgBox "Đối tượng được chọn không phải kiểu Range" End If Sheets Sheets là tập đối tượng chứa tất cả các sheet có trong workbook hiện hành, gồm cả 4 loại sheet: worksheet, chart sheet, macro sheet và dialog sheet. Đoạn macro sau sẽ hiển thị tên và kiểu của tất cả các sheet có trong workbook hiện hành: Sub Sheets() Dim mySheet As Variant For Each mySheet In Application.Sheets MsgBox mySheet.Name & " - " & TypeName(mySheet) Next mySheet End Sub ThisWorkbook Thuộc tính này trả về đối tượng thể hiện cho workbook hiện hành, nơi đang thực hiện macro. Kiểu dữ liệu của thuộc tính này là Workbook. Undo Phương thức này sẽ khôi phục lại các thao tác trước đó trong Excel. Thao tác này tương tự như khi chọn trình đơn EditÖUndo… trong Excel. Application.Undo CHÚ Ý Khi truy cập đến một đối tượng thuộc một đối tượng khác, nếu không chỉ rõ tham chiếu đối tượng thì đối được tham chiếu sẽ là đối tượng hiện hành. Ví dụ như nếu muốn truy cập vào ô A1 của Sheet1 của workbook hiện hành, thay vì sử dụng câu lệnh “ActiveWorkbook.Worksheets(“Sheet1”).Range(“A1”)” chỉ cần dùng câu lệnh “Worksheets(“Sheet1”).Range(“A1”)”. Hoặc nếu sử dụng câu lệnh “Range(“A1”).Select” thì ô A1 của sheet hiện hành sẽ được chọn. 5.2.2. Đối tượng Workbook Workbook là một đối tượng phổ biến trong Excel. Hầu hết tất cả các thao tác trên Excel đều được thực hiện trên một workbook nào đó. Trong mỗi phiên làm việc của Excel có thể có rất nhiều workbook được mở, và việc truy cập đến một workbook nào đó sẽ được thực hiện thông qua tập đối tượng Workbooks, dựa trên tên hoặc chỉ số của các workbook, chỉ số này phụ thuộc vào trình tự mở /tạo workbook. Ngoài ra, người lập trình còn có thể truy xuất đến workbook hiện hành thông qua đối tượng ActiveWorkbook. Để tạo mới một workbook, sử dụng phương thức Add có trong tập đối tượng Workbooks: Workbooks.Add ’Tạo mới một Workbook Mỗi workbook trong Excel có thể chứa nhiều sheet khác nhau (tuỳ thuộc vào dung lượng bộ nhớ). Có 4 loại sheet khác nhau: C C H H Ư Ư Ơ Ơ N N G G I I V V : : L L Ậ Ậ P P T T R R Ì Ì N N H H T T R R Ê Ê N N M M I I C C R R O O S S O O F F T T E E X X C C E E L L 125 Ø Ø Worksheet: đây là loại sheet phổ biến nhất, là loại sheet thực hiện việc tính toán và thao tác chính trong Excel. Mỗi sheet bao gồm 256 cột và 65536 hàng tạo thành hệ thống các ô chứa dữ liệu. Ngoài ra, trên mỗi worksheet còn thế chứa các đối tượng khác như biểu đồ, các đối tượng đồ hoạ, các điều khiển,… Ø Ø Chart sheet: mỗi chart sheet thường chỉ chứa một biểu đồ. Thông thường, người dùng thích sử dụng bi ểu đồ nhúng trong worksheet hơn là sử dụng biểu đồ trong một chart sheet riêng biệt. Tuy nhiên, chart sheet lại giúp cho việc bố trí và in ấn biểu đồ thực hiện dễ dàng hơn Ø Ø XLM macro sheets (còn gọi là MS Excel 4 macro sheet, là loại sheet đã lỗi thời, nhưng vẫn còn hỗ trợ): dùng để chứa các macro XLM. XLM macro sheet cũng có chứa các ô dữ liệu nhưng chỉ hiển thị công thức chứ không hiển thị kết quả tính. Ø Ø Dialog sheets (đã lỗi thời, nhưng vẫn còn hỗ trợ): là nơi chứa các hộp thoại tuỳ biến do người dùng tự tạo (giống như Userform trong VBA). Các phương thức và thuộc tính thường được sử dụng của đối tượng workbook: Activate Phương thức này sẽ kích hoạt một workbook trong tập đối tượng Workbooks thành workbook hiện hành, và sheet hiện hành của workbook đó sẽ được kích hoạt làm sheet hiện hành trong Excel. Để kích hoạt workbook có tên Book1 làm workbook hiệ n hành, thực hiện như sau: Workbooks(“Book1”).Activate Còn để kích hoạt workbook đầu tiên trong Excel, thực hiện như sau: Workbooks(1).Activate ActiveSheet Thuộc tính này tham chiếu đến sheet hiện hành của workbook. Trong mỗi phiên làm việc của Excel, số lượng Workbook được mở là không hạn chế, mỗi workbook này đều có một sheet hiện hành, nghĩa là khi ta chọn làm việc với workbook đó thì con trỏ sẽ nằm trong sheet này. Kiểu dữ liệu trả về của thuộc tính này tuỳ thuộc vào kiểu sheet hiện hành (một trong 4 loại). Trong đối tượng Application cũng có thuộc tính ActiveSheet, nhưng thuộc tính này là sheet hiện hành củ a workbook hiện hành, nghĩa là nơi có con trỏ đang hoạt động, như vậy, nếu workbook này là hiện hành thì thuộc tính ActiveSheet của đối tượng Application và của đối tượng Workbook là như nhau. Đoạn mã lệnh sau hiển thị tên của sheet hiện hành của workbook tên là Book1: MsgBox Workbooks(“Book1”).ActiveSheet.Name Close Phương thức này sẽ đóng workbook lại, tương tự như khi sử dụng trình đơn FileÖClose trong Excel. Ngoài ra còn có các tham số tuỳ chọn khác phục vụ cho việc lưu trữ tệp. Workbooks(“Book1”).Close ([SaveChanges],[Filename]) Trong đó ý nghĩa của các tham số như sau: 126 Ø Ø SaveChanges: tham số tuỳ chọn. Bằng TRUE nếu muốn lưu tất cả các thay đổi, và bằng FALSE nếu chỉ muốn đóng workbook mà không lưu. Nếu bỏ qua, tuỳ chọn này thì phương thức này sẽ giống hoàn toàn như khi ta chọn trình đơn FileÖClose. Ø Ø Filename: tham số tuỳ chọn. Sẽ lưu tệp với tên chứa trong Filename. PrintOut Phương thức này sẽ in sheet hiện hành của workbook ra máy in. Workbooks(1).PrintOut Phương thức này còn có rất nhiều tham số khác nữa, tất cả đều là tham số tuỳ chọn: Ø Ø From: số thứ tự trang bắt đầu in, nếu bỏ qua thì sẽ in từ đầu. Ø Ø To: số thứ tự trang cuối cùng được in, nếu bỏ qua thì sẽ in đến trang cuối cùng. Ø Ø Copies: số bản sao khi in ra, nếu bỏ qua thì chỉ in một bản. Ø Ø Preview: nếu bằng TRUE, Excel sẽ hiển thị cửa sổ xem trước khi in. Nếu bằng FALSE, hoặc bỏ qua, thì sẽ in trực tiếp. Ø Ø ActivePrinter: thiết lập tên cho máy in hiện hành. Ø Ø PrintToFile: nếu bằng TRUE sẽ in ra tệp. Trong trường hợp đó, nếu không gán giá trị cho tham số PrToFileName, Excel sẽ hiển thị hộp thoại để người dùng nhập vào tên tệp. Ø Ø Collate: nếu bằng TRUE và số bản sao lớn hơn 1, Excel sẽ sắp xếp các bản in thành từng tập hoàn thiện. Ø Ø PrToFileName: nếu tham số PrinToFile gán bằng TRUE thì tham số này sẽ thiết lập tên tệp để in ra. PrintPreview Phương thức này sẽ hiển thị chế độ xem trước khi in cho sheet hiện hành của workbook tham chiếu. Workbooks(1).PrintPreview SavevàSaveAs Các phương thức này sẽ lưu workbook và thường được dùng trước khi đóng workbook. Phương thức Save sẽ lưu những thay đổi vào chính workbook đó. Còn phương thức SaveAs sẽ lưu workbook ra một tệp mới. Đoạn mã sau sẽ lưu workbook có tên Book1 và sau đó lưu workbook có tên là Book3 với tên mới là MyFile.xls: Workbooks(“Book1”).Save Workbooks(“Book3”).SaveAs “C:\MyFile.xls” Saved Thuộc tính này trả về giá trị TRUE nếu workbook đã được lưu, và ngược lại là FALSE. Đoạn mã sau sẽ hiển thị trạng thái lưu của workbook: MsgBox Workbooks(1).Saved Sheets C C H H Ư Ư Ơ Ơ N N G G I I V V : : L L Ậ Ậ P P T T R R Ì Ì N N H H T T R R Ê Ê N N M M I I C C R R O O S S O O F F T T E E X X C C E E L L 127 Tập đối tượng Sheets của workbook cũng giống như tập đối tượng Sheets của đối tượng Application (xem lại mục “Sheets” trang 124). Tuy nhiên, tập đối tượng sheets của workbook tham chiếu trực tiếp đến các sheet trong workbook đó, còn tập đối tượng sheets của đối tượng Application lại tham chiếu đến các sheet trong workbook hiện hành. Windows Windows là tập đối tượng chứa tất cả các cửa sổ có trong đối tượng Workbook. Chi tiết về t ập đối tượng Windows, xem thêm mục “Đối tượng Window” trang 127. Worksheets Worksheets là tập đối tượng chứa tất cả các worksheet có trong đối tượng Workbook. Chi tiết về tập đối tượng Worksheets, xem thêm mục “Đối tượng Worksheet” trang 129. 5.2.3. Đối tượng Window Đối tượng Window thể hiện cho một cửa sổ bên trong ứng dụng Excel. Như đã được đề cập, đối tượng Window rất dễ nhầm lẫn với đối tượ ng Workbook. Thoạt nhìn, mỗi workbook cũng giống như một cửa sổ trong Excel, nhưng thực chất không phải vậy. Để rõ hơn sự khác biệt giữa đối tượng workbook và đối tượng window, ta tạo thêm một cửa sổ mới bằng cách chọn trình đơn WindowÖNew Window. Cửa sổ mới được tạo có nội dung giống như cửa sổ ban đầu, nhưng người dùng có thể làm việc trên hai cửa sổ này giống như khi làm việc trên 2 workbook riêng biệt (mặc dù cả hai cửa sổ đều là thể hiện của cùng một workbook). Đương nhiên, sự thay đổi ở cửa sổ này sẽ được tự động cập nhập trong các cửa sổ còn lại. Và như vậy, mỗi một workbook có thể được thể hiện bằng nhiều cửa số khác nhau, nhưng mỗi một cửa sổ chỉ thể hiện được một workbook mà thôi. Để truy xuất đến một đối tượng trong tập đối tượng Windows, người dùng có thể truy cập theo tên hoặc theo thứ tự của cửa sổ. Để truy xuất đến cửa sổ có tiêu đề là Book1 (là dòng chữ xuất hiện trên thanh tiêu đề của cửa sổ), ta sử dụng cấu trúc sau: Windows(“Book1”) Để truy xuất đến cửa sổ thứ 2 trong tập đối tượng Windows, ta sử dụng cấu trúc sau: Windows(2) Số thứ tự của một cửa sổ là không cố định mà thay đổi tuỳ theo số cửa sổ hiển thị và sự thay đổi của cửa sổ hiện hành. Cửa sổ hiện hành luôn có thứ tự là l. Dưới đây là các phương thức và thuộc tính thường sử dụng trong đối tượng Window: Activate,ActivateNextvàActivatePrevious Các phương thức này dùng để kích hoạt một cửa sổ nào đó trong t ập đối tượng Windows. Activate, ActivateNext và ActivatePrevious dùng để kích hoạt cửa sổ được chỉ định, cửa sổ tiếp theo và cửa sổ trước của cửa sổ được chỉ định. Đoạn mã sau sẽ kích hoạt cửa sổ tên là Book1, sau đó sẽ kích hoạt cửa sổ nằm phía trước của cửa sổ Book1. Windows("Book1").Activate Windows("Book1").ActivatePrevious ActiveCell Thuộc tính này tham chiếu đến ô hiện hành, là ô có con trỏ đang hoạt động, trong đối tượng Window. Đoạn mã sau sẽ hiển thị địa chỉ của ô hiện hành trong cửa sổ thứ 2 trong tập đối tượng Windows: 128 MsgBox Windows(2).ActiveCell.Address ActiveSheet Thuộc tính này tham chiếu đến sheet hiện hành của workbook đang xét. Caption Thuộc tính này chứa nội dung ghi trên thanh tiêu đề của cửa sổ. Đoạn mã sau sẽ thay đổi dòng tiêu đề của cửa sổ hiện hành: ActiveWindow.Caption = “MyWindow” Close Close là hàm thực hiện đóng cửa sổ đang xét. Hàm này trả về giá trị TRUE nếu đóng được cửa sổ, và trả về giá trị FALSE nếu cửa sổ không được đóng. Hàm này cũng chứa các tham số tuỳ chọn khác, chi tiết xem thêm phương thức Close của đối tượng Workbook trang 125. Cácthuộctínhvềhiểnthị Đối tượng Window có chứa nhiều thuộc tính để thiết l ập các lựa chọn về hiển thị trong cửa số như sau: Thuộc tính Giải thích DisplayFormulas TRUE: tất cả các ô sẽ hiển thị công thức chứ không phải giá trị DisplayGridlines TRUE: hiển thị các đường lưới bên trong cửa sổ DisplayHeadings TRUE: hiển thị thanh thể hiện vị trí của cột và hàng DisplayHorizontalScrollBar TRUE: hiển thị thanh cuộn ngang DisplayOutline TRUE: hiển thị thanh thể hiện Outline DisplayRightToLeft TRUE: hiển thị trật tự cột tăng dần từ phải sang trái. Mặc định là FALSE DisplayVerticalScrollBar TRUE: hiển thị thanh cuộn đứng DisplayWorkbookTabs TRUE: hiển thị thẻ chứa các sheet trong workbook DisplayZeros FALSE: các ô có giá trị bằng 0 sẽ không hiển thị Đoạn mã sau sẽ ẩn đi thẻ chứa các sheet trong workbook hiện hành: ActiveWindow.DisplayWorkbookTabs = False NewWindow Phương thức này sẽ tạo một cửa sổ mới dựa trên cửa sổ đang được tham chiếu giống như khi chọn trình đơn WindowÖNew Window trong Excel vậy. ActiveWindow.NewWindow C C H H Ư Ư Ơ Ơ N N G G I I V V : : L L Ậ Ậ P P T T R R Ì Ì N N H H T T R R Ê Ê N N M M I I C C R R O O S S O O F F T T E E X X C C E E L L 129 RangeSelection Thuộc tính này tham chiếu đến vùng đang được chọn trong cửa sổ được tham chiếu. Kiểu dữ liệu của thuộc tính này là Range. Đoạn mã sau sẽ hiển thị địa chỉ của vùng được chọn trong cửa sổ hiện hành: MsgBox ActiveWindow.RangeSelection.Address Giá trị hiển thị có thể ở dạng địa chỉ tuyệt đối của một ô - $C$3, hoặc một vùng chọn - $B$10:$D$12. SelectedSheets SelectedSheets là tập đối tượng chứa tất cả các sheet đang được người dùng lựa chọn. Kiểu dữ liệu của thuộc tính này là Sheets, vì thế tất cả các thao tác trên tập đối tượng SelectedSheets cũng giống như trên tập đối tượng Sheets WindowState Thuộc tính này lưu trữ trạng thái của đối tượng Window. Có 3 trạng thái của đối tượng Window như sau: Trạng thái đối tượng Window Giá trị của thuộc tính Cửa sổ được phóng đại toàn màn hình xlMaximized Cửa sổ được thu nhỏ xlMinimized Cửa sổ ở trạng thái thông thường xlNormal Đoạn mã sau sẽ thu nhỏ cửa sổ hiện hành: ActiveWindow.WindowState = xlMinimized Zoom Thuộc tính này dùng để thiết lập chế độ phóng đại cho cho cửa sổ, giống như khi ta sử dụng trình đơn ViewÖZoom trong Excel. Đoạn mã sau sẽ phóng đại cửa sổ hiện hành lên 120%: ActiveWindow.Zoom = 120 GỢI Ý Trong Excel, để thu/phóng cửa sổ, chỉ cần nhấn phím CTRL + cuộn phím giữa của chuột. 5.2.4. Đối tượng Worksheet Đối tượng Worksheet thể hiện cho một worksheet trong một workbook. Đây là đối tượng rất phổ biến trong excel, hầu hết các thao tác đều được tiến hành trong một worksheet. CHÚ Ý Worksheet chỉ là một trong nhiều dạng sheet của một workbook. Chi tiết về các loại sheet trong Excel, xem thêm mục “ Đối tượng Workbook ” trang 124. Trong cây phân cấp đối tượng, đối tượng Worksheet nằm sau tập đối tượng Worksheets của đối tượng Workbook. Vì vậy, các đối tượng Worksheet đều được truy cập thông qua tập đối tượng Worksheets. Tương tự như đối với đối tượng Window, mỗi đối tượng Worksheet đều được truy cập thông qua tập đối tượng Worksheets bằng tên của worksheet hoặc theo thứ tự của nó. 130 Một cách khác để biết thứ tự của worksheet, đó là xem thứ tự xuất hiện trên thẻ chứa các sheet trong bảng tính. Hình IV-13: Thứ tự của Worksheet Trong minh hoạ trên, vị trí thứ 2 là của Chart sheet nên không được tính trong thứ tự của các worksheet. Để tạo một worksheet mới, sử dụng phương thức Add có trong tập đối tượng Worksheets. Worksheets.Add Dưới đây là các phương thức và thuộc tính phổ biển trong đối tượng worksheet. Calculate Phương thức này thực hiện quá trính tính toán cho toàn bộ worksheet được tham chiếu (xem thêm mục “Calculation” trang 122): Worksheets(“Sheet1”).Calculate Comments Là tập đối tượng chứa tất cả các chú thích 1 có trong worksheet đang được tham chiếu. Kiểu dữ liệu trả về là kiểu Comment. Đoạn mã sau sẽ hiển thị nội dung của tất cả các chú thích có trong sheet hiện hành: Dim myComment As Comment For Each myComment In Worksheets(“Sheet1”).Comments MsgBox myComment.Text Next myComment Delete Phương thức này sẽ xoá worksheet được tham chiếu, giống như khi chọn trình đơn EditÖDelete Sheet trong Excel. Đoạn mã sau sẽ xoá worksheet tên là “Sheet3”: Worksheets(“Sheet3”).Delete Name Thuộc tính này trả về tên của worksheet giống như được hiển thị trên thẻ chứa các sheet trong workbook. PrintOutvàPrintPreview 1 Chú thích là một đoạn văn bản gắn thêm vào một ô nào đó. Đoạn văn bản này được hiện lên mỗi khi người dùng di chuột trên ô. Ô nào có chú thích thì sẽ có thêm biểu tượng hình tam giác màu đỏ ở góc trên bên phải của ô. Để tạo chú thích cho một ô, chọn trình đơn InsertÖComment trong Excel. C C H H Ư Ư Ơ Ơ N N G G I I V V : : L L Ậ Ậ P P T T R R Ì Ì N N H H T T R R Ê Ê N N M M I I C C R R O O S S O O F F T T E E X X C C E E L L 131 Những phương thức này dùng để thực hiện in hoặc xem trước khi in một worksheet. Chi tiết về các tham số cho phương thức PrintOut, xem lại mục “Đối tượng Workbook - PrintOut” trang 126. Worksheets(“Sheet2”).PrintOut PrintPreview:=True ’In, có xem trước Worksheets(“Sheet3”).PrintPreview ’Xem trước khi in ProtectvàUnprotect Phương thức Protect sẽ bật chế độ bảo vệ cho worksheet giống như khi chọn từ trình đơn ToolsÖProtectionÖProtect Sheet trong Excel. Nếu cần tạo mật khẩu để yêu cầu người dùng nhập mỗi khi tắt chế độ bảo vệ, người dùng có thể nhập thêm vào tham số chuỗi ký tự chứa mật khẩu trong phương thức Protect Worksheets(“Sheet2”).Protect ’Bật chế độ bảo vệ Worksheets(“Sheet2”).Protect Password:="Excel" ’Bảo vệ, có mật khẩu Phương thức Unprotect sẽ tắt chế độ bảo vệ của worksheet. Đối với những worksheet được bảo vệ bằng mật khẩu, cần phải truyền thêm tham số là chuỗi ký tự chứa mật khẩu để tắt chế độ bảo vệ; nếu không truyền tham số mật khẩu, một hộp thoại sẽ được hiện lên để người sử dụng nhập vào mật khẩu. Worksheets(“Sheet2”).Unprotect Password:="Excel" ’Tắt chế độ bảo vệ Range Đây là thuộc tính rất quan trọng trong lập trình trên Excel. Thuộc tính này sẽ được trình bày rõ hơn trong mục “Đối tượng Range” trang 132. Select Phương thức này sẽ chọn worksheet tham chiếu làm worksheet hiện hành, tương tự như khi chọn worksheet trên thẻ chứa các sheet của workbook. Worksheets(“Sheet2”).Select ‘Chọn Sheet2 làm sheet hiện hành SetBackgroundPicture Phương thức này sẽ chọn một ảnh làm ảnh nền cho worksheet, giống như khi chọn trình đơn FormatÖSheetÖBackground… trong Excel. Tham số bắt buộc phải nhập vào là tên tệp đồ hoạ dùng để làm ảnh nền, bao gồm cả đường dẫn đầy đủ. Nếu muốn xoá ảnh nền, chỉ cần nhập tham số tên tệp đồ hoạ bằng rỗng. Worksheets(“Sheet1”).SetBackgroundPicture "C:\MyPicture.jpg" Worksheets(“Sheet1”).SetBackgroundPicture "" ’Xoá ảnh nền Visible Thuộc tính này thiết lập sự hiển thị của worksheet, bằng TRUE nếu worksheet được hiển thị. Việc thay đổi giá trị của thuộc tính này cũng tương tự như khi chọn từ trình đơn FormatÖSheetÖHide/Unhide… trong Excel. Worksheets(“Sheet1”).Visible = False ’Ẩn Sheet1 132 Worksheets(“Sheet1”).Visible = True ’Hiển thị lại Sheet1 Name–ĐặttênchomộtvùngdữliệutrongWorksheet Sử dụng thuộc tính Name để đặt tên cho vùng dữ liệu cần thao tác theo cách sau: Dim a As Worksheet Set a = Worksheets("Sheet1") a.Names.Add "ABC", "=$A$1:$D$5" CHÚ Ý Nếu tên được đặt đã có thì vùng dữ liệu cũ sẽ được định nghĩa lại theo phạm vi mới. Nếu vùng dữ liệu khôn có dấu $ thì nó sẽ tự động tịnh tiến theo vị trí của ô hiện hành. 5.2.5. Đối tượng Range Đối tượng Range tham chiếu đến một ô hoặc một vùng dữ liệu trên bảng tính. Đây là đối tượng phổ biến nhất trong Excel, bởi hầu hết các tương tác với Excel đều được thực hiện dựa trên các ô và vùng dữ liệu. Với đối tượng Range, người lập trình không chỉ tác động lên một ô riêng lẻ mà còn có thể tác động lên nhiều ô cùng một lúc. Thamchiếuđếnđối tượngRange Việc tham chiếu đến đối tượng Range được thực hiện dựa trên địa chỉ của các ô và được thực hiện theo nhiều phương thức khác nhau. Để làm rõ hơn cách thức tham chiếu, các ví dụ sau sẽ thực hiện gán giá trị cho vùng dữ liệu được tham chiếu. Để tham chiếu đến một ô nào đó, chỉ cần nhập địa chỉ của ô. Địa chỉ của ô có thể là ki ểu địa chỉ tương đối, hoặc tuyệt đối. Ví dụ sau sẽ tham chiếu đến ô B2: ActiveSheet.Range("B2").Value = 9 ‘hoặc có thể gán trực tiếp như sau: ActiveSheet.Range("B2") = 9 Trong trường hợp nếu người dùng có một vùng dữ liệu được đặt tên, người lập trình có thể tham chiếu đến vùng dữ liệu đó thông qua tên của vùng dữ liệu. Giả sử trong Sheet1 có một vùng dữ liệu từ ô A2 đến ô B3 được đặt tên là Input, thì cách tham chiếu như sau: Worksheets("Sheet1").Range("SoLieu") = 9 . Dialogs Dialogs là tập đối tượng chứa tất cả các hộp thoại đã được định nghĩa sẵn trong Excel. Chi tiết về tập đối tượng này, tham khảo mục “Các hộp thoại mặc định trong Excel – Tập đối tượng Dialogs”. workbook hiện hành, thay vì sử dụng câu lệnh “ActiveWorkbook.Worksheets(“Sheet1”).Range(“A1”)” chỉ cần dùng câu lệnh “Worksheets(“Sheet1”).Range(“A1”)”. Hoặc nếu sử dụng câu lệnh “Range(“A1”).Select”. phụ thuộc vào trình tự mở /tạo workbook. Ngoài ra, người lập trình còn có thể truy xuất đến workbook hiện hành thông qua đối tượng ActiveWorkbook. Để tạo mới một workbook, sử dụng phương thức