Giáo trình Excel nâng cao

Mục tiêu:

 Hiểu được ý nghĩa, công dụng, các thao tác của hàm Goal seek, Solver;

 Phân tích được bài toán và đưa bài toán về dạng phương trình 1 ẩn hoặc 2 ẩn;

 Thiết lập bài toán trên bảng tính Excel;

 Sử dụng được hàm Goal seek và hàm Solver;

 Có tính cẩn thận, khoa học, sáng tạo khi phân tích và thiết lập bài toán.

I. GOAL SEEK

1. Khái niệm:

Goal seek (Hàm mục tiêu) thường áp dụng trong các bài toán như tính doanh thu

hòa vốn, thay đổi một chỉ tiêu chi phí nào đó để có được lợi nhuận như mong muốn,

tính tổng chi phí cho tổng chi phí ròng phải trả

2. Cách dùng

a. Yêu cầu khi dùng hàm Goal seek:

Trước khi chạy Goal Seek, cần thiết lập bảng tính theo một mẫu nào đó và thực hiện

3 bước sau đây:

 Thiết lập một ô làm ô thay đổi (changing cell). Đây là giá trị mà Goal Seek sẽ xử

lý lặp đi lặp lại để cố gắng đạt được kết quả gần đúng nhất. Rồi nhập một giá trị ban

đầu trong ô này, có thể giả định bằng không.

 Thiết lập các giá trị nhập liệu khác cho công thức và đặt cho chúng những giá trị

thích hợp.

 Tạo một công thức để Goal Seek sử dụng trong quá trình cố gắng đạt được mục

tiêu.

Thực hiện trên bảng tính Excel:

 Thực hiện trên MS Excel 2010: Data\ What-If Analysis\Goalseek.

 Xác định các tham số cho hàm (Set cell, To value, By changing cell).

Hình 1.1Trang 6/ 89

Lưu ý:

 Khi thiết lập một bảng tính để sử dụng Goal Seek, thường có một công thức

trong một ô và các biến cho công thức này (với một giá trị ban đầu) trong những ô

khác. Công thức có thể có nhiều biến, nhưng Goal Seek chỉ cho phép xử lý mỗi lần

một biến mà thôi.

 Xác định các biến trong công thức và giá trị ban đầu cho các biến.

b. Cách hoạt động của Goal Seek

Hàm Goal Seek hoạt động bằng cách sử dụng phương pháp lặp đi lặp lại

(iterative method) để tìm ra lời giải. Nghĩa là, Goal Seek sẽ thử giá trị ban đầu của

biến để xem nó có tạo ra kết quả mong muốn hay không. Nếu không, Goal Seek sẽ thử

tiếp với những giá trị khác nhau, cho đến khi nào kết quả mà nó tìm được gần giống

với kết quả mong muốn nhất.

3. Ứng dụng bài toán Tìm giá trị thanh toán của khoản tiền trong tương lai

a. Thiết lập bài toán

Một người đang muốn để dành tiền để mua một thiết bị có trị giá $50.000, thời

gian là 5 năm tính từ hôm nay. Giả sử rằng, tiền gửi ngân hàng có lãi suất là 5% một

năm, vậy cần phải gửi vào ngân hàng mỗi năm tối thiểu là bao nhiêu để đạt được

mong muốn của mình?

b. Dùng hàm Goal seek

Dùng hàm Goal seek để tìm kiếm số tiền phải nộp vào ngân hàng mỗi năm để sau

5 năm sẽ có $50.000

Giáo trình Excel nâng cao trang 1

Trang 1

Giáo trình Excel nâng cao trang 2

Trang 2

Giáo trình Excel nâng cao trang 3

Trang 3

Giáo trình Excel nâng cao trang 4

Trang 4

Giáo trình Excel nâng cao trang 5

Trang 5

Giáo trình Excel nâng cao trang 6

Trang 6

Giáo trình Excel nâng cao trang 7

Trang 7

Giáo trình Excel nâng cao trang 8

Trang 8

Giáo trình Excel nâng cao trang 9

Trang 9

Giáo trình Excel nâng cao trang 10

Trang 10

Tải về để xem bản đầy đủ

pdf 89 trang xuanhieu 9980
Bạn đang xem 10 trang mẫu của tài liệu "Giáo trình Excel nâng cao", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Giáo trình Excel nâng cao

Giáo trình Excel nâng cao
phím tắt cho Macro thông qua trình quản lý Macro. Chi tiết tham khảo phần “Quản lý 
 Macro” ở phần trên. 
 b. Thực thi Macro thông qua trình quản lý Macro 
 Nhằm tạo điều kiện thuận lợi cho người sử dụng trong khi làm việc với Macro, 
 chương trìnhExcel đã tích hợp sẵn một trình quản lý Macro. Để hiển thị trình 
 quản lý Macro, chọn trình đơn Tools Macro Macros hoặc nhấn tổ hợp phím 
 ALT+F8. (Xem Hình 6.9) 
 Trang 77/ 89 
 Trong cửa sổ Macro, các Macro được tạo theo kịch bản hoặc bằng VBAIDE có 
trong phiên làm việc hiện tại của Excel sẽ được hiển thị trong một danh sách. Tất cả 
các thao tác quản lý Macro sẽ được thực hiện dễ dàng. Để bắt đầu một thao tác nào đó, 
trước hết cần phải chọn Macro có trong danh sách: 
 Để thực thi Macro (chạy Macro): kích chuột vào nút Run. 
 Để hiệu chỉnh Macro: kích chuột vào nút Edit, cửa sổ lệnh trong VBAIDE chứa các 
mã lệnh của Macro được chọn sẽ được hiển thị để người sử dụng có thay đổi mã lệnh 
trong Macro đó. Kích chuột vào nút Options sẽ hiển thị hộp thoại lựa chọn, cho 
phép người sử dụng thiết lập lại phí Hình: Hộp thoại Macro Options. 
 Hình 6.4 
 c. Thực thi Macro trực tiếp từ VIBAIDE 
Cách thực thi Macro trực tiếp từ VBAIDE rất thích hợp khi người sử dụng muốn thử 
nghiệm ngay Macro trong quá trình xây dựng nó. 
Để thực thi Macro nào đó trong VBAIDE, cần thực hiện như sau: 
1. Trong cửa sổ mã lệnh của VBAIDE, đặt con trỏ vào giữa khối Sub  End Sub. 
2. Nhấn phím F5 hoặc chọn biểu tượng trên thanh công cụ. 
 Trong trường hợp người sử dụng không đặt con trỏ giữa, một đanh sách các 
Macro hiện lên để người dùng lựa chọn để thực thi Macro cần thiết. 
 Trang 78/ 89 
 Hình 6.5 
 Khi Macro được tạo ra chưa đáp ứng đủ nhu cầu thì người sử dụng thường có 
 nhu cầu thay đổi mã lệnh của Macro đó. Quá trình hiệu chỉnh Macro được thực hiện 
 thông qua VBAIDE. 
IV. XÂY DỰNG HÀM MỚI TRONG EXCEL BẰNG VBA 
 1. Khái niệm về hàm trong Excel 
 a. Khái niệm về hàm trong Excel 
 Hàm là những công thức đã được định nghĩa sẵn trong Excel thực hiện tính toán 
 dựa trên các số liệu đầu vào, gọi là tham số, theo một trình tự đã được lập trình sẵn 
 nhằm thực hiện các phép tính từ đơn giản đến phức tạp. 
 Để hiểu rõ hơn về cấu trúc của một hàm, ta tìm hiểu về hàm ROUND có sẵn trong 
 Excel, là hàm dùng để làm tròn số: 
 Hình 6.6 
  Cấu trúc. Một hàm bắt đầu bằng dấu bằng “=”, tiếp sau là tên hàm, dấu ngoặc 
 đơn “(“, danh sách các tham số cách nhau bằng dấu phẩy “,” và cuối cùng là dấu ngoặc 
 đơn “)”. 
  Tên hàm. Ấn phím SHIFT+F3 để hiển thị danh sách tất cả các hàm trong 
 Excel. 
  Các tham số. Tham số có thể là số, chữ, giá trị logic như TRUE hoặc FALSE, 
 Trang 79/ 89 
mảng, giá trị lỗi như #NA, hoặc tham chiếu đến một ô khác. Tham số truyền vào phải 
có kiểu thích hợp với kiểu của từng tham số tương ứng của hàm. Tham số truyền vào 
có thể là một hằng số, công thức, hoặc là một hàm bất kỳ. 
  Chú thích hàm. Chú thích hàm dùng để thể hiện cấu trúc và danh sách các 
tham số của hàm, hiện lên khi ta nhập vào tên hàm. Chú thích hàm chỉ xuất hiện đối 
với những hàm được xây dựng sẵn trong Excel. 
2. Tạo hàm mới bằng VBA 
 a. Tạo hàm mới bằng VBA 
 Excel cho phép xây dựng các hàm mới bằng VBA, và đặc biệt, việc sử dụng các 
hàm mới này không khác gì so với việc sử dụng các hàm có sẵn của Excel. Hàm mới 
luôn mang đặc tính: 
  Trả về một giá trị nào đó, tương tự như hàm có sẵn trong Excel; 
  Hàm mới có thể sử dụng như một chương trình con trong VBA, nghĩa là nó vừa 
 có thể sử dụng trong bảng tính (trong các ô), đồng thời có thể sử dụng trong các 
 chương trình viết bằng VBA. 
 b. Cấu trúc hàm 
 Hàm là một chương trình con dạng Function. Khác với Macro, hàm là chương 
trình con có giá trị trả về và có thể có tham số. 
Khi tạo hàm mới, người sử dụng cần phải tuân thủ theo dạng thức khai báo như sau: 
[Public/Private] Function Tên_hàm([DSách_tham_số])[as 
kiểu_dữ_liệu] 
[Câu_lệnh] 
[Tên_hàm = biểu_thức] 
[Exit Function] 
[Câu_lệnh] 
[Tên_hàm = biểu_thức] 
End Function 
 Trong đó: 
 Public: (tuỳ chọn) là từ khoá biểu thị phạm vi của hàm, hàm có thể được sử 
 dụng ở bất kỳ đâu trong tất cả các dự án VBA hiện có. Khi có từ khoá Public, 
 tên hàm sẽ được hiển thị trong danh sách hàm của Excel. 
 Private: (tuỳ chọn) là từ khoá biểu thị phạm vi của hàm, hàm chỉ có thể được 
 sử dụng bên trong mô-đun có chứa hàm đó. Khi có từ khoá Private, tên hàm sẽ 
 Trang 80/ 89 
 không được hiển thị trong danh sách hàm của Excel, nhưng người sử dụng vẫn 
 có thể dùng hàm này trong bảng tính một cách bình thường. 
 Chú ý Nếu không khai báo phạm vi cho hàm (từ khoá Public/Private), thì mặc 
định, hàm sẽ có phạm vi là Public. 
 Function: (bắt buộc) là từ khoá báo hiệu bắt đầu một hàm. 
 Tên_hàm: (bắt buộc) là tên của hàm, cách đặt tên hàm tương tự như cách đặt 
 tên của biến. 
 Tên_hàm sẽ được sử dụng như là biến trong toàn bộ hàm, khi hàm kết thúc giá trị 
 trả về của hàm chính là giá trị đã gán cho biến Tên_hàm cuối cùng. 
 Danh_sách_tham_số: (tuỳ chọn) là danh sách các tham số đầu vào của hàm. 
 Các tham số được phân cách với nhau bằng dấu phẩy. 
 Kiểu_dữ_liệu: (tuỳ chọn) quy định kiểu giá trị trả về của hàm. Nếu không quy 
 định 
 kiểu dữ liệu, hàm sẽ có kiểu dữ liệu mặc định là Variant. 
 Exit Function: (tuỳ chọn) là câu lệnh dùng để kết thúc hàm ngay lập tức (cho 
 dù phía sau câu lệnh này vẫn còn các khối lệnh khác). 
 End Function: (bắt buộc) là từ khoá báo hiệu kết thúc một hàm. 
 c. Tạo hàm mới 
 Để tạo một hàm mới, thực hiện theo các bước sau: 
 1. Khởi động VBAIDE. Trong trình đơn Tools, chọn mục Macro/Visual Basic 
Editor; 
 2. Trong trình đơn Insert, chọn mục Module để tạo một mô-đun mới, nơi sẽ 
chứa hàm do người dùng định nghĩa. 
 3. Trong trình đơn Insert, chọn mục Procedure để hiển thị hộp thoại Add 
Procedure. Sau đó điền tên hàm vào mục Name, chọn kiểu chương trình con là 
Function và phạm vi là Public. Cuối cùng chọn OK; 
 Hình 6.6 
 Trang 81/ 89 
4. Chương trình sẽ tự động phát sinh đoạn mã lệnh như sau: 
Public Function Dien_Tich() 
End Function 
5. Thay đoạn mã lệnh trên bằng đoạn mã lệnh thích hợp. 
Public Function Dien_Tich(Rong As Double, Cao As Double) As Double 
‘Ham tinh dien tich hinh chu nhat 
Dien_Tich = Rong * Cao 
End Function 
6. Chọn mục Close and Return to Microsoft Excel để quay trở về màn hình chính 
của Excel. 
7. Lúc này, hàm mà ta vừa xây dựng, có tên là Dien_Tich, đã có thể được sử dụng 
bình 
thường như các hàm khác của Excel. 
 d. Hàm trả về lỗi và cách khắc phục 
 Hàm trả về lỗi: Một số giá trị lỗi cũng như các hằng số tương ứng trong VBA 
 GIÁ TRỊ HẰNG GIẢI THÍCH 
 LỖI SỐ 
 #DIV/0! xlErrDiv0 Công thức có chia một số cho 0. Lỗi này cũng phát sinh 
 khi chia cho một ô trống. 
 #N/A xlErrNA Lỗi này biểu thị dữ liệu không có. 
 #NAME? xlErrName Hàm có tên mà Excel không thể nhận dạng được. Thường 
 xảy ra khi nhập tên hàm sai, hoặc đã thay đổi tên hàm 
 nhưng chưa cập nhật trong bảng tính. 
 #NULL! xlErrNull Giá trị rỗng, chẳng hạn như tìm giao của hai vùng không 
 giao nhau. 
 #NUM! xlErrNum Có vấn đề với giá trị nào đó. Ví dụ như người dùng nhập 
 vào số âm, trong khi chỉ chấp nhận số dương. 
 #REF! xlErrRef Tham chiếu đến ô không tồn tại. Điều này thường xảy ra 
 khi ô đã bị xoá khỏi bảng tính. 
 Trang 82/ 89 
 #VALUE! xlErrValue Hàm có chứa tham số hoặc công thức không phù hợp về 
 kiểu dữ 
 liệu 
 Trong quá trình xây dựng một dự án phần mềm, việc gặp các lỗi là không thể 
tránh khỏi. Vì vậy, việc tìm và xử lý lỗi là điều tất yếu. Trình tự của công việc này như 
sau: 
 1. Tìm và phân loại lỗi. 
 2. Tìm kiếm vị trí mã lệnh phát sinh lỗi. 
 3. Sửa lỗi. 
 4. Ngăn chặn lỗi có thể xảy ra trong tương lai. 
3. Ví dụ đơn giản với VBA 
 Ví dụ này được trình bày với mục đích giúp người dùng làm quen với VBA 
IDE trong Excel. 
 Kết quả của ví dụ là hiển thị nội dung ô A1 trong Sheet1 của bảng tính lên tiêu 
đề của một hộp thoại người dùng (UserForm). 
 Trình tự thực hiện như sau: 
 1. Mở ứng dụng Excel, nhấn tổ hợp phím ALT+F11 để vào VBA IDE. 
 2. Trong VBA IDE, chọn menu Insert / UserForm để thêm một hộp thoại người 
dùng vào 
trong dự án. 
 3. Chọn tiếp menu Insert /Module để thêm một mô-đun chuẩn vào trong dự án. 
 4. Chọn Module1 và soạn thảo mã lệnh trong mô-đun đó như sau: 
Public Sub FirstPro() 
UserForm1.Show 
UserForm1.Caption = Sheets("Sheet1").Range("A1").Value 
End Sub 
 Hình 6.7 
 Trang 83/ 89 
Sau đó quay trở lại Excel, và chạy chương trình theo trình tự: 
1. Gõ vào ô A1 của Sheet1 nội dung “tin hoc ung dung”. 
2. Chọn menu Tools / Macro / Macros (hoặc nhấn tổ hợp phím ALT+ F8). 
3. Trong hộp thoại Macro, chọn macro có tên FirstPro rồi nhấn nút Run. 
 Hình 6.5 
4. Bài tâp ứng dụng 
 Sử dụng công cụ VBA: Dịch số tiền về chữ (Chuyển số thành chữ) 
 Bước 1. Mở tập tin cần chuyển >> Nhấn tổ hợp phím Alt + F11 để mở trình soạn thảo 
 VBA của Excel. 
 Bước 2. Nhấp chuột phải lên VBA Project >> Insert >> Module >> và dán đoạn 
 mã bên dưới vào cửa sổ của Module mới chèn 
 Function ConvertCurrencyToVietnamese(ByVal MyNumber) 
 Dim Temp 
 Dim Dollars, Cents 
 Dim DecimalPlace, Count ReDim Place(9) As 
 String Place(2) = " Nghin " 
 Place(3) = " Trieu " 
 Place(4) = " Ty " 
 Place(5) = " Ngan ty " 
 ' Convert MyNumber to a string, trimming extra 
 spaces. MyNumber = Trim(Str(MyNumber)) 
 ' Find decimal place. 
 DecimalPlace = InStr(MyNumber, ".") 
 ' f we fin ecimal place 
 If DecimalPlace > 0 Then 
 ' Convert cents 
 Temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2) 
 Cents = ConvertTens(Temp) 
 ' Strip off cents from remainder to convert. 
 MyNumber = Trim(Left(MyNumber, DecimalPlace - 1)) 
 Trang 84/ 89 
End If 
Count = 1 
Do While MyNumber "" 
' Convert last 3 digits of MyNumber to English 
dollars. 
Temp = ConvertHundreds(Right(MyNumber, 3)) 
If Temp "" Then Dollars = Temp & Place(Count) & Dollars 
If Len(MyNumber) > 3 Then 
' Remove last 3 converted digits from MyNumber. 
 MyNumber = Left(MyNumber, Len(MyNumber) - 3) 
 Else 
MyNumber = "" 
End If 
Count = Count + 1 
Loop 
' Clean up dollars. Select Case Dollars Case 
"" 
Dollars = "khong Nghin" 
Case "One" 
Dollars = "Mot Nghin" 
Case Else 
Dollars = Dollars & " Nghin" 
End Select 
' Clean up cents. 
Select Case Cents 
Case "" 
Cents = " va khong Dong" 
Case "One" 
Cents = " va mot Dong" 
Case Else 
Cents = " va " & Cents & " Dong" 
End Select 
ConvertCurrencyToVietnamese = Dollars & Cents 
End Function 
Private Function ConvertHundreds(ByVal MyNumber) 
Dim Result As String 
' Exit if there is nothing to convert. 
If Val(MyNumber) = 0 Then Exit Function 
' Append leading zeros to number. 
MyNumber = Right("000" & MyNumber, 3) 
 Trang 85/ 89 
' Do we have a hundreds place digit to 
convert? 
If Left(MyNumber, 1) "0" Then 
Result = ConvertDigit(Left(MyNumber, 1)) & " Tram " 
End If 
' Do we have a tens place digit to convert? 
If Mid(MyNumber, 2, 1) "0" Then 
Result = Result & ConvertTens(Mid(MyNumber, 2)) 
Else 
' If not, then convert the ones place digit. 
Result = Result & 
ConvertDigit(Mid(MyNumber, 3)) 
End If 
ConvertHundreds = Trim(Result) 
End Function 
Private Function ConvertTens(ByVal 
MyTens) 
Dim Result As String 
' Is value between 10 and 19? 
If Val(Left(MyTens, 1)) = 1 Then 
Select Case Val(MyTens) 
Case 10: Result = "Muoi" 
Case 11: Result = "Muoi mot" 
Case 12: Result = "Muoi hai" 
Case 13: Result = "Muoi ba" 
Case 14: Result = "Muoi bon" 
Case 15: Result = "Muoi lam" 
Case 16: Result = "Moi sau" 
Case 17: Result = "Muoi bay" 
Case 18: Result = "Muoi tam" 
Case 19: Result = "Muoi chin" 
Case Else 
End Select 
Else 
' .. otherwise it’s between 20 an 99. 
Select Case Val(Left(MyTens, 1)) Case 2: Result 
= "Hai muoi " 
Case 3: Result = "Ba muoi " 
Case 4: Result = "Bon muoi " 
Case 5: Result = "Nam muoi " 
Case 6: Result = "Sau muoi " 
Case 7: Result = "Bay muoi " 
 Trang 86/ 89 
 Case 8: Result = "Tam muoi " 
 Case 9: Result = "Chin muoi " 
 Case Else 
 End Select 
 ' Convert ones place digit. 
 Result = Result & ConvertDigit(Right(MyTens, 1)) End If 
 ConvertTens = Result 
 End Function 
 Private Function ConvertDigit(ByVal MyDigit) 
 Select Case Val(MyDigit) 
 Case 1: ConvertDigit = "Mot" 
 Case 2: ConvertDigit = "Hai" 
 Case 3: ConvertDigit = "Ba" 
 Case 4: ConvertDigit = "Bon" 
 Case 5: ConvertDigit = "Nam" 
 Case 6: ConvertDigit = "Sau" 
 Case 7: ConvertDigit = "Bay" 
 Case 8: ConvertDigit = "Tam" 
 Case 9: ConvertDigit = "Chin" 
 Case Else: ConvertDigit = "" End Select 
 End Function 
 Bước 3. Nhấn phím Alt + F11 một lần nữa và nhấn Ctrl + S để save lại toàn bộ 
 tài liệu. 
 Bước 4. Sử dụng công thưc =ConvertCurrencyToVietnamese(B3) để 
 chuyển đổi tiền tệ từ số về chữ (với B3 là số tiền bằng chữ số) 
 Ví dụ: B3 có giá trị là: 123456 thì kết quả =ConvertCurrencyToVietnamese(B3) 
 trả về là Mot Tram Hai muoi Ba Nghin Bon Tram Nam muoi Sau Nghin va 
 khong Dong 
5. Bài tập 
 Bài tập 1: 
 1) Tạo Macro có tên "Dinhdang" ghi lại một hành động Format (màu, loại font, 
cỡ,..) Gán Macro "Dinhdang" lên thanh Toolbar (không yêu cầu dùng VBA), dùng với 
phương pháp "ustomize...". Định dạng một số ô bằng Macro "Dinhdang" 
 2) Đọc hiểu Macro Mở xem nội dung của Macro "Dinhdang" (ALT+F11) Giải 
thích từng dòng lệnh. Bản chất của một Macro là một Sub (thủ tục)? 
 3) Có mấy cách để chạy được một Macro? Nội dung của các cách? 
 4) Tạo một Macro định dạng bảng, giải thích từng dòng lệnh của Macro đó. 
 Trang 87/ 89 
 5) Tạo một Macro để dán giá trị (Paste Value) 
 Ứng dụng: Khi cần copy giá trị của một công thức, bạn chọn lệnh Copy sau đó 
đặt con trỏ vào địa chỉ cần dán dữ liệu và chạy Macro trên. 
 6) Tạo một Macro định dạng số tiền về dạng "#,##0" 
 7) Tạo một Macro định dạng ngày tháng về dạng "dd/MM/yy" 
 8) Tạo một Macro dán định dạng (Paste Formats) 
 9) Tạo một Macro để xoay chiều giá trị 
 Ứng dụng: Khi cần xoay các giá trị nằm theo hàng thành theo cột. 
 10) Tạo một thanh công cụ (Toolbar) có tên "Các lệnh của tôi". Trên thanh 
toolbar gán tất cả các Macro đã tạo từ câu 1-9 đặt tên rõ ràng theo nội dung công việc. 
 Bài tập 2: 
 1) Viết hàmMax2So nhận đầu vào là 2 giá trị số thực, giá trị trả về của hàm trả về 
là giá trị lớn nhất trong 2 đối số. 
 2) Viết hàmMax3So nhận đầu vào là 3 giá trị số thực, giá trị trả về của hàm trả về 
là giá trị lớn nhất trong 3 đối số. 
 Trang 88/ 89 
 TÀI LIỆU THAM KHẢO 
1. Nguyễn Quỳnh, Giáo trình Microsoft Excel nâng cao,  
2. Đinh Thế Hiển, Excel Ứng Dụng - Phân Tích Hoạt Động Kinh Doanh & Tài Chính 
 Kế Toán, NXB Thống kê, 2007; 
3. Nguyễn Ngọc Hiển, Dẫn Thực Hành Sổ Sách Kế Toán Lập Báo Cáo Tài Chính Và 
 Báo Cáo Thuế GTGT Trên Excel, NXB Tài chính, 2007. 
4. Cao Bá Thành, Giáo trình Excel & Ứng dụng Kế toán, NXB Thanh niên; 
5. Giáo trình Excel 2010, Microsoft Office-Việt Nam 
 Trang 89/ 89 

File đính kèm:

  • pdfgiao_trinh_excel_nang_cao.pdf