befaint
|||||||||||||
- Tham gia
 - 6/1/11
 
- Bài viết
 - 14,599
 
- Được thích
 - 19,832
 
Bài 5. Workbook, worksheet
(Danh sách các bài viết về VBA xem ở đây Index - Các bài viết về VBA)
Sơ đồ các đối tượng trong VBA:
1- Application (Microsoft Excel)
2- Workbook (Excel file)
3- Worksheet
4- Range
1. Đối tượng Workbook:
Theo sơ đồ trên, workbook là đối tượng cấp thứ 2 của Application (Microsoft Excel).
	
	
	
		
Ví dụ:
	
	
	
		
Tức là đang hiểu (viết đầy đủ) (*):
	
	
	
		
- Một số thuộc tính và phương thức thường dùng:
Mở workbook mới:
	
	
	
		
 Với filepath là đường dẫn của file cần mở.
Ví dụ:
	
	
	
		
Tạo mới workbook.
	
	
	
		
 Trả về tên đối tượng workbook trong VBA:
	
	
	
		

Trả về tên workbook để quản lý tập tin (tên file):
	
	
	
		
Trả về đường dẫn thư mục chứa workbook.
	
	
	
		
Tên workbook bao gồm cả đường dẫn thư mục chứa nó:
	
	
	
		
Lưu các thay đổi đã tác động lên workbook:
	
	
	
		
Đóng workbook và lưu các thay đổi đã tác động lên workbook:
	
	
	
		
Đóng workbook và không lưu các thay đổi đã tác động lên workbook:
	
	
	
		
2. Đối tượng Worksheet
Trong VBA, khi xét tới đối tượng Worksheet thì nó là đối tượng cấp thứ 3, sau Workbook.
(Xem lại ví dụ (*) ở phần đối tượng workbook ở trên.)


- Có 3 cách để gọi (tham chiếu tới) đối tượng worksheet:
Cách 1: Sử dụng worksheet name – Là tên của bảng tính nhìn thấy ở trên thanh trạng thái (Sheet tabs).
	
	
	
		
# Cách 2: Sử dụng thứ tự sắp xếp của worksheet ở sheet tabs, tính từ trái qua phải, vị trí đầu tiên là 1
	
	
	
		
# Cách 3: Sử dụng CodeName của worksheet, là tên của đối tượng worksheet trong VBA
	
	
	
		
- Một số phương thức và thuộc tính thường dùng:
Count: Thuộc tính Count trả về số worksheets có trong một workbook.
	
	
	
		
Activate: Phương thức Activate để kích hoạt worksheet được chỉ định.
	
	
	
		
Select: Phương thức Select để chọn (một hoặc nhiều) worksheet(s) được chỉ định.
	
	
	
		
				
			(Danh sách các bài viết về VBA xem ở đây Index - Các bài viết về VBA)
Sơ đồ các đối tượng trong VBA:
1- Application (Microsoft Excel)
2- Workbook (Excel file)
3- Worksheet
4- Range
1. Đối tượng Workbook:
Theo sơ đồ trên, workbook là đối tượng cấp thứ 2 của Application (Microsoft Excel).
		PHP:
		
	
	MsgBox ThisWorkbook.Parent
'Result: Microsoft Excel
	
		PHP:
		
	
	Sub vidu1()
Range("A1").Value = "Xin chao!"
End Sub
	
		PHP:
		
	
	Sub vidu2()
Application.ThisWorkbook.Worksheets(1).Range("A1").Value = "Xin chao!"
End Sub
	- Một số thuộc tính và phương thức thường dùng:
Mở workbook mới:
		PHP:
		
	
	Workbooks.Open(filepath)
	Ví dụ:
		PHP:
		
	
	Workbooks.Open("C:\Users\Administrator\Desktop\Vidu.xlsx")
	
		PHP:
		
	
	Workbooks.Add
	
		PHP:
		
	
	ActiveWorkbook.CodeName
	
Trả về tên workbook để quản lý tập tin (tên file):
		PHP:
		
	
	ThisWorkbook.Name
	
		PHP:
		
	
	ThisWorkbook.Path
	
		PHP:
		
	
	ThisWorkbook.FullName
	
		PHP:
		
	
	ThisWorkbook.Save
	
		PHP:
		
	
	ThisWorkbook.Close True '(SaveChanges = True)
	
		PHP:
		
	
	ThisWorkbook.Close False '(SaveChanges = False)
	2. Đối tượng Worksheet
Trong VBA, khi xét tới đối tượng Worksheet thì nó là đối tượng cấp thứ 3, sau Workbook.
(Xem lại ví dụ (*) ở phần đối tượng workbook ở trên.)


- Có 3 cách để gọi (tham chiếu tới) đối tượng worksheet:
Cách 1: Sử dụng worksheet name – Là tên của bảng tính nhìn thấy ở trên thanh trạng thái (Sheet tabs).
		PHP:
		
	
	Sub wsName()
    Worksheets("Ten sheet 1").Range("A1").Value = "Xin chao!"
    ''Hoac co the viet sheets thay cho worksheets
    Sheets("Ten sheet 1").Range("A2").Value = "Xin chao!"
End Sub
	# Cách 2: Sử dụng thứ tự sắp xếp của worksheet ở sheet tabs, tính từ trái qua phải, vị trí đầu tiên là 1
		PHP:
		
	
	Sub wsIndex()
    Sheets(1).Range("B1").Value = Sheets(1).Name & "-Vi tri=" & Sheets(1).Index
    Sheets(2).Range("B1").Value = Sheets(2).Name & "-Vi tri=" & Sheets(2).Index
End Sub
	# Cách 3: Sử dụng CodeName của worksheet, là tên của đối tượng worksheet trong VBA
		PHP:
		
	
	Sub wsCodeName()
    Sheet1.Range("B2").Value = Sheets(1).Name
    Sheet2.Range("B2").Value = Sheets(2).Name
    Sheet1.Range("C1").Value = Sheet1.CodeName
    Sheet2.Range("C1").Value = Sheet2.CodeName
    MsgBox Sheet1.Index
End Sub
	- Một số phương thức và thuộc tính thường dùng:
Count: Thuộc tính Count trả về số worksheets có trong một workbook.
		PHP:
		
	
	MsgBox Worksheets.Count
	
		PHP:
		
	
	Sheet1.Activate
	
		PHP:
		
	
	Sheet1.Select
'Hoặc:'
Sheets(Array("TenSheet1", "TenSheet2")).Select
	
	
	  