Lưu trữ danh mục: Excel

Các hàm công thức mảng mới trong Excel 2019 và Office 365

Giới thiệu về một số công thức mảng mới được giới thiệu trong Excel 2019:

Excel 2019 giới thiệu một số hàm mới để xử lý mảng:

  1. HSTACK: Ghép cột các mảng có cùng số hàng. Hàm HSTACK cho phép ghép nhiều mảng lại theo chiều ngang. Ví dụ: =HSTACK(A1:C3, E1:G3) sẽ ghép cột A1:C3 và E1:G3.
  2. VSTACK: Ghép hàng các mảng có cùng số cột. Hàm VSTACK cho phép ghép nhiều mảng lại theo chiều dọc. Ví dụ: =VSTACK(A1:A3, C1:C3) sẽ ghép hàng A1:A3 và C1:C3.
  3. UNIQUE: Lấy các giá trị duy nhất trong một phạm vi. Hàm UNIQUE loại bỏ giá trị trùng lặp và chỉ lưu giá trị duy nhất. Ví dụ: =UNIQUE(A1:A10) sẽ lưu tất cả các giá trị duy nhất trong phạm vi A1 đến A10.

Trong Excel, có hai cách để sắp xếp và lọc dữ liệu trong bảng:

4. Sắp xếp (Sort): Hàm SORT cho phép sắp xếp cột hoặc toàn bộ bảng theo tiêu chí nhất định. Cú pháp hàm SORT là:

SORT(array, keys, order)

•Array: Phạm vi các giá trị để sắp xếp.
•Keys: Phạm vi số cột để sắp xếp. Nếu bỏ trống thì sẽ sắp xếp toàn bộ bảng.
•Order: Giá trị 1 để sắp xếp tăng dần, -1 để giảm dần. Nếu bỏ trống thì mặc định là tăng dần.

Ví dụ:
=SORT(A1:C10, 2, -1) //Sắp xếp cột thứ 2 giảm dần từ A1 đến C10

=SORT(A1:C10,, 1) //Sắp xếp toàn bộ bảng tăng dần từ A1 đến C10

5. Lọc (Filter): Hàm lọc cho phép lọc ra những dòng phù hợp với điều kiện nhất định. Cú pháp hàm lọc là:

FILTER(array, condition)

•Array: Phạm vi các giá trị để lọc.
•Condition: Điều kiện lọc dưới dạng công thức logic.

Ví dụ:
=FILTER(A1:C10, A1:C10>5) //Lọc ra dòng có giá trị lớn hơn 5

=FILTER(A1:C10, A1:C10>5, B1:C10=”abc”) //Lọc ra dòng có giá trị trong cột A lớn hơn 5 và cột B bằng “abc”

Các hàm trên mở rộng khả năng xử lý mảng trong Excel và cho phép thực hiện các phép tính mảng phức tạp hơn. Bạn có thể sử dụng chúng để ghép nhiều mảng lại, lọc các giá trị duy nhất hoặc đưa ra kết quả được cải thiện.

ỨNG DỤNG HÀM FILTER VÀ COUNTIF CHO BÀI TOÁN ĐỐI SOÁT. LỌC CÁC TRƯỜNG HỢP CÓ MUA HÀNG VÀ KHÔNG MUA HÀNG

= filter( vùng lọc, điều kiện lọc, giá trị nếu ko có dl)

F5=   FILTER(B5:D14,D5:D14 = H2,”không có dữ liệu”)

Bộ lọc đối soát

F12 = FITLER(B5:B14,COUNTIF(F5:F9,B5:B14)=0,”Không có dữ liệu”)

ỨNG DỤNG CHO BÀI TOÁN LIỆT KÊ NHỮNG quốc gia cung cấp sản phẩm

=TEXTJOIN(“-“,TRUE,UNIQUE(IF(E57=$B$57:$B$79,$C$57:$C$79,””)))

EXCEL NÂNG CAO -BKCAD

Chào mừng các bạn đến với khóa học

EXCEL NÂNG CAO dành cho khối Doanh Nghiệp.

Khóa học gồm các nội dung sau:
ÔN TẬP EXCEL – CÁC TÍNH NĂNG CƠ BẢN VÀ NÂNG CAO
CÁC NHÓM HÀM ĐẶC TRƯNG TRONG EXCEL
BIỂU ĐỒ VÀ IN ẤN TRONG EXCEL
TỔNG HỢP, PHÂN TÍCH VÀ THỐNG KÊ BÁO CÁO SỐ LIỆU
•CỘNG TÁC BỘ OFFICE  – MACRO

1. Để bắt đầu khóa học. Các bạn vui lòng bấm vào ĐĂNG KÝ thông tin học viên để vào lớp học:
2. Dựa và các tài nguyên có sẵn bên dưới. Chúng ta sẽ cùng nhau tìm hiểu và thực hiện yêu cầu của từng buổi học.
Giáo trình môn học dựa theo Giáo trình gốc – bản tiếng Anh

Bộ bài tập thực hành Excel advanced 2010
file tổng hợp macro


3.  Sau khi kết thúc khóa học. Các bạn vui lòng thực hiện bài kiểm tra kiến thức sau: 
                                           Excel Nâng Cao
 – Phần thi lý thuyết: Link bài thì
– Phần thi Thực Hành: Link yêu cầu 
( Giảng viên sẽ cung cấp mã đăng nhập cho bài kiểm tra)

Microsoft Office Cơ bản – Basic

Chào mừng các bạn đến với khóa học


Tập huấn kỹ năng văn phòng Microsoft Office cơ bản cho người đi làm

1. Để bắt đầu khóa học. Các bạn vui lòng bấm vào ĐĂNG KÝ thông tin học viên để vào lớp học:
                                             

2. Bộ TÀI NGUYÊN khóa học

3. Bài thực hành Tài liệu thực hành

4. Sau khi kết thúc khóa học. Các bạn vui lòng thực hiện bài kiểm tra kiến thức sau: 

                                           Office Cơ Bản

 – Phần thi lý thuyết:  Bài kiểm tra tổng hợp  Word – Excel
– Phần thi Thực Hành: 



5. NỘI DUNG CHI TIẾT CHƯƠNG TRÌNH HỌC

Microsoft Word
Khởi động với Microsoft Word
Các thao tác cơ bản trong Microsoft Word
Các định dạng cơ bản
Làm việc với bảng biểu
Các công cụ tiện ích: mục lục và trộn thư trong Microsoft Word
In ấn trình bày trong Word
Microsoft Excel
Giới thiệu chung về Microsoft Excel
Làm việc với bảng tính
Định dạng bảng tính
Công thức và hàm
Biểu đồ và đồ thị
Căn chỉnh – In ấn và trao đổi thông tin
Microsoft Power Point
Giới thiệu về MS Power Point
Làm việc với Power point
Làm việc với văn bản trong Power Point
Làm việc với bảng biểu trong Power Point
Làm việc với WordArt và ClipArt
Trình diễn – In Ấn
Bổ trợ
   Kỹ năng khai thác và tìm kiếm thông tin trên mạng Internet

EXCEL 2013 NÂNG CAO

Thời gian 24h
Đối tượng:
Bất cứ ai muốn sử dụng các kỹ năng Excel ở cấp nâng cao đều có thể tham gia lớp học này, nhưng sẽ đặc biệt hữu ích cho:

Quản lý Chuyên môn / Quản lý dây chuyền sản xuất
Chuyên gia Tài chính / Kế toán
Chuyên viên nhân sự / Chuyên viên hành chính / Chuyên viên Kế hoạch tổng hợp
Nhân viên kinh doanh và Tiếp thị Chuyên nghiệp
Chuyên viên quản trị
Chuyên viên làm việc trong Quản lý dữ liệu và Phân tích số liệu.
Chủ doanh nghiệp nhỏ
Các chuyên gia từ các tổ chức phi chính phủ như Quản lý Chương trình & dự án

Mô tả khóa học:
Tăng hiệu quả, năng suất Excel của bạn với những lời khuyên và thủ thuật mạnh mẽ của người sử dụng trong khóa học Excel 2013 nâng cao này. Tác giả Giang Trần sẽ chỉ cho bạn cách tạo ra các công thức một cách nhanh chóng, chia nhỏ dữ liệu thành các cột, áp dụng định dạng, xây dựng biểu đồ, và các công việc nhập dữ liệu thường xuyên nhanh chóng. Ngắn đúng thời gian?
Thành thạo sử dụng các “Danh sách phím Tắt” và “Danh mục kỹ thuật Mẹo” trong Excel 2013.
Excel được sử dụng rộng rãi để tổ chức và theo dõi thông tin phổ biến như danh sách dẫn bán hàng, báo cáo trạng thái dự án, danh sách liên hệ, Tổng cộng nâng cao, Củng cố, Đưa ra các Phân tích Đối với Mô hình Kinh doanh và Tối ưu hoá Dữ liệu….

Mục tiêu:
Khóa học nhằm cung cấp cho học viên các kỹ năng chuyên gia trong khả năng quản lý, phân tích dữ liệu của Microsoft Excel 2013. Sau khóa học, học viên có thể áp dụng kiến thức theo thực tế phù hợp với môi trường kinh doanh mà học viên làm việc. Mục tiêu của khóa học không chỉ là hiểu các công cụ để làm việc với sản phẩm mà còn phát triển các kỹ năng để lựa chọn đúng công cụ để có được kết quả mong muốn
Sau khi hoàn thành khóa học, sinh viên sẽ có thể:
Sử dụng các chức năng chính của MS Excel 2013
Kiểm soát kết quả tính toán và nhập dữ liệu
Sử dụng các công cụ phân tích khác nhau
Tổng hợp dữ liệu & Báo cáo
Thống kê
Hợp nhất các Báo cáo từ nhiều nguồn
Bộ lọc nâng cao
PivotTable
Lọc dữ liệu trong PivotTable
Tìm kiếm và tham chiếu
Nhận dữ liệu từ các nguồn bên ngoài
Các hàm tham chiếu 3D
Hàm trả về chuỗi giá trị trong excel (indirect)
Xác nhận đầu vào khi nhập dữ liệu
Hàm match Index
Phân tích tình huống trong excel
Chuyển đổi dữ liệu
Công cụ Phân tích
Gói công cụ phân tích nhanh

Yêu cầu
Ngoài kinh nghiệm chuyên môn của mình, học viên tham dự khoá học này khuyến khích nên có kinh nghiệm:
Quản lý môi trường Worksheet
Áp dụng công thức và hàm
Áp dụng các tham chiếu ô trong công thức.
Áp dụng điều kiện logic trong một công thức.
Áp dụng các ô trong các công thức.
Lọc dữ liệu. Sắp xếp dữ liệu.

Tài nguyên
Giáo trình
Tài liệu handout
Tài liệu slide
Tài liệu thực hành

NỘI DUNG KHÓA HỌC:
Buổi 1: Giới thiệu tổng quan khóa học
Giới thiệu về MS Excel, Xem lại nhanh các lựa chọn của MS Excel, Ribbon.
Nhóm hàm cơ bản (Tài chính, Toán học, Chuỗi, Thời gian, Logic…)
Các phím tắt cơ bản
Các tính năng mới trong Excel 2013
Buổi 2: Nhóm hàm nâng cao và kỹ thuật xử lý.
Nhóm hàm nâng cao về tra cứu tìm kiếm: Vlookup, Hlookup, Lookup, index, match, offset…
Nhóm hàm nâng cao trong thống kê: Dsum, Dcount, Sumif, Sumifs, Countif, Countifs, Product…
Kỹ thuật lồng ghép hàm.
Phân tích các công thức rẽ nhánh phức tạp
Kỹ thuật xử lý lỗi hàm sai
Buổi 3: Các vấn đề quản lý dữ liệu
Chuẩn hóa khâu nhập liệu với các tính năng Data Validation động.
Kiểm soát quản lý dữ liệu với các định dạng có điều kiện Conditional Formatting.
Thiết lập bảng
Form nhập liệu
Buổi 4: Vấn đề trong thống kê xử lý dữ liệu
Sắp xếp dữ liệu nâng cao
Trích lọc dữ liệu nâng cao
Nhóm và tách nhóm
Tổng hợp dữ liệu
Kỹ thuật xây dựng bảng điều kiển giao diện thể hiện dữ liệu
Buổi 5: Kỹ thuật trực quan hóa dữ liệu ở dạng đồ họa, hình hảnh, biểu đồ. Thiết lập biểu đồ động
Biểu đồ thanh, biểu đồ cột, biểu đồ đường dây, biểu đồ hình tròn
Công cụ thiết kế biểu đồ
Đường xu hướng và tăng trưởng
Biểu đồ kết hợp
Biểu đồ mẫu
Buổi 6: Kỹ thuật Pivot Tables. Ứng dụng các công cụ phân tích quan trọng.
Làm việc với Pivot Tables
Sắp xếp lại PivotTables
Lọc trong PivotTables
Định dạng PivotTables
Thêm công thức vào một bảng Pivot
Sử dụng biểu đồ Pivot
Thay đổi dữ liệu và sao chép Pivot
Buổi 7: Kết nối, tổng hợp dữ liệu
Kết xuất dữ liệu từ các nguồn bên ngoài (SQL Server, Excel, Access,..)
Tổng hợp dữ liệu từ nhiều bảng tính và Sheets khác nhau bằng kỹ thuật hàm 3D và Consolidate
Buổi 8: Công cụ phân tích thống kê, dự báo
Thống kê Bảng dữ liệu dạng 1 biến và 2 biến – Data Table
Tìm kiếm mục tiêu – Goal seek
Quản lý kịch bản – Scenario Manager
Bộ công cụ phân tích – Analysis Tool Pack
Các Add-in phân tích dự đoán, thống kê, hồi quy
Buổi 9: Macros và Visual Basic
Ghi và chạy Macro
Hiển thị Tab Nhà phát triển
Thay đổi Cấp độ An ninh
Làm việc với mã VBA
Buổi 10: Công thức mảng và thống kê bằng công thức mảng
Mảng 1 chiều
Mảng 2 chiều
Sử dụng công thức mảng
Hàm thống kê bằng công thức mảng
Buổi 11: Bảo mật, cộng tác và chia sẻ thông tin
Thiết lập bảo mật công thức, bảng tính, file tính.
Thiết lập các cộng tác trên tài liệu
Chia sẻ bảng tính và và theo dõi các thay đổi
Buổi 12: Giới thiệu các Add-in và công cụ mới trong phân tích dữ liệu Excel 2013
Bộ công Power Pivot
Bộ điều kiển giao diện Power View

Một số khái niệm về Big Data trong Excel

Cách tạo và cài add-in trong excel

Add-in là cách các bạn có thể sử dụng lại các đoạn macro trong excel mà ko cần phải mở file hay lưu file dưới dạng macro (*.xlsm)

Các bước thực hiện như sau:

1. Mở file excel mới. Alt + F11 hoặc (Alt + Fn + F11). Chọn Insert/ Module.
NHập đoạn code macro đã viết vào module mới vừa tạo. ( tùy chọn nội dung macro)

2. Đóng chế độ Macro ( Alt + Q) hoặc File/ Close and return Excel
3. Lưu file excel ở dạng add-in 97-2003 (*xla) với tên và vị trí tùy ý. Đóng file add-in vừa tạo.

4. Mở file excel mới. Chọn File/Options/ Add-ins  Tại mục Manage chọn Excel add-in chọn Go. Hộp thoại add-in mở ra, chọn browse để tìm file xla vừa lưu tại bước 3. Tích chọn và ok.

Như vậy là file add-ins đã có thể sử dụng ở bất cứ file excel nào trên máy.

code tính ngày -năm theo Can – Chi

Option Explicit
Function CanYear(nam As Long)
Dim Mg()
Mg = Array(“Canh”, “Tan”, “Nham”, “Quy”, “Giap”, “At”, “Binh”, “Dinh”, “Mau”, “Ky”)
CanYear = Mg(nam Mod 10)
End Function

Function ChiYear(nam As Long)
Dim Mg()
Mg = Array(“Than”, “Dau”, “Tuat”, “Hoi”, “Ti”, “Suu”, “Dan”, “Mao”, “Thin”, “Ty”, “Ngo”, “Mui”)
ChiYear = Mg(nam Mod 12)
End Function

Function Canday(ngay As Date)
Dim Mg()
Dim tam
tam = DateSerial(Year(ngay), Month(ngay), Day(ngay))
Mg = Array(“Nham”, “Quy”, “Giap”, “At”, “Binh”, “Dinh”, “Mau”, “Ky”, “Canh”, “Tan”)
Canday = Mg(tam Mod 10)
End Function
Function Chiday(ngay As Long)
Dim Mg()
Dim tam
tam = DateSerial(Year(ngay), Month(ngay), Day(ngay))
Mg = Array(“Than”, “Dau”, “Tuat”, “Hoi”, “Ti”, “Suu”, “Dan”, “Mao”, “Thin”, “Ty”, “Ngo”, “Mui”)
Chiday = Mg(tam Mod 12)
End Function

code đổi lịch dương sang âm

Code tham khảo từ Hongocduc

Option Explicit
 Public Lday, Lmonth As Byte, Lyear As Integer, isLeap, LunarInfo
 ‘ chú thích
 Sub lunar(d, m, y)
 Dim DiffADate, Counter, i, Temp, Leap
     ‘ tính sô ngày tù môc 1/31/1900   ‘ghi chú: d se Ðuoc xem nhu month
     DiffADate = DateDiff(“d”, #1/31/1900#, CDate(m & “-” & d & “-” & y))
     Counter = -1 ‘ngày 31/1/1900 có DateDiff = 0 tuong úng ÂL là ngày 1
         ‘nên counter = -1 vì ngày ÂL = DateDiff – counter
     Lyear = 1900  ‘nam bat Ðâu tính, Lyear là nam ÂL tuong Ðuong DL
         For i = Lyear To 2199 ‘ Ðêm trong 300 nam kê tiêp
             Temp = YearDays(i) ‘goi Function YearDays nam Ðang Ðêm = sô ngày/nam
             Counter = Counter + Temp ‘cong sô ngày dôn
If Counter >= DiffADate Then                  ‘nêu sô ngày dôn >= DiffADate
                     Counter = Counter – Temp ‘ tru` sô ngày dôn 1 nam Ðang tính
                     Exit For  ‘và thoát vòng lap, = Ðã có giá tri Lyear
End If
             Lyear = Lyear + 1 ‘nam Ðang Ðêm thêm 1 don vi
         Next
  ‘so’ di phai tính nhu thê Ðê tìm chính xác nhung ngày cuôi nam ÂL mà Ðã sang nam mo’i DL
  ‘trong truong hop nây, xem nhu vân nam cu
 Leap = LeapMonth(Lyear) ‘ goi hàm LeapMonth, tháng nhuân là tháng mây?
 isLeap = “” ‘ set giá tri xác Ðinh cua tháng nhuân = “”
 Lmonth = 1

 For i = 1 To 12
If Leap > 0 And i = Leap + 1 And isLeap = “” Then
 isLeap = “(N)” ‘nêu tháng nhuân có và I lo’n hon 1 thì Nhuân
 Lmonth = Lmonth – 1 ‘tháng lùi 1
 i = i – 1 ‘Ðêm lùi 1
 Temp = LeapDay(Lyear) ‘ goi hàm leapday, tính sô ngày nhuân
Else
 Temp = MonthDays(Lyear, i) ‘goi hàm monthdays tính sô ngày thuong
End If

 If isLeap = “(N)” And i <> Leap Then isLeap = “”
  ‘ Nêu xác dinh Nhuân và I khác tháng nhuân thì Xác Ðinh không phai Nhuan
 Counter = Counter + Temp ‘ cong dôn ngày tù vi trí Exit For khi xác Ðinh Lyear

If Counter >= DiffADate Then  ‘nêu sô ngày dôn >= DiffADate
 Counter = Counter – Temp ‘ tru` sô ngày dôn 1 tháng Ðang tính
 Exit For   ‘và thoát vòng lap, = Ðã có giá tri Lmonth
End If
 Lmonth = Lmonth + 1 ‘tháng Ðang Ðêm thêm 1 don vi
 Next
 Lday = DiffADate – Counter ‘Ngày Ðuoc xác Ðinh
 End Sub
 Function LeapMonth(y) ””””””
 If y >= 1900 Then LeapMonth = LunarInfo(y – 1900) And &HF Else LeapMonth = 0
 ‘Tháng nhuân = LunarInfo(nam Ðang chuyên) And &HF = ( tu 0 – 12) ngoài ra thì = 0
 End Function

 Function LeapDay(y) ”””””
If LunarInfo(y – 1900) And &HF Then  ‘nêu có tháng nhuân thì
 If LunarInfo(y – 1900) And &H10000 Then LeapDay = 30 Else LeapDay = 29
 ‘ Nêu LunarInfo(nam Ðang chuyên) And &H10000 > 0 thì 30 không thì 29 ngày
Else
 LeapDay = 0
End If
 End Function

 Function MonthDays(y, m) ”””””””’
 Dim MonthMask
 MonthMask = Array(32768, 16384, 8192, 4096, 2048, 1024, 512, 256, 128, 64, 32, 16)
 ‘ Mang loc tháng(1-12) = MonthMask(0-11)
 ‘ Nêu LunarInfo(nam Ðang chuyên) And Mang loc tháng(tháng Ðang chuyên) > 0 thì 30 ngoài ra thì 29
 If LunarInfo(y – 1900) And MonthMask(m – 1) Then MonthDays = 30 Else MonthDays = 29
 End Function

 Function YearDays(y) ””””””’
 Dim i, MonthMask
 MonthMask = Array(32768, 16384, 8192, 4096, 2048, 1024, 512, 256, 128, 64, 32, 16)
 YearDays = 348  ’12 tháng x 29 ngày
 For i = 0 To 11 ‘tháng nào có 30 ngày thì thêm 1
 If LunarInfo(y – 1900) And MonthMask(i) Then YearDays = YearDays + 1
 Next
 YearDays = YearDays + LeapDay(y) ‘ cong thêm sô ngày nhuân nêu có
 End Function
 ‘Ham so chuyen doi tu Duong lich sang Am lich dang ngay,thang,nam
 Public Function TransLu(d, m, y)
 Call Goi
 ‘ cau trúc cua hàm lunar là (d, m, y), VB6 dùng (m, d, y) nên function TransLu
 ‘ se doi vi tri câu trúc khi goi hàm lunar
 Call lunar(m, d, y)
 TransLu = Lday & “/” & Lmonth & isLeap & “/” & Lyear
 End Function
 ‘Ham so chuyen doi tu Duong lich sang Am lich dang tu mot o
 Public Function TransLu1(NT As Date) ‘ NT = ngày tháng
 Call lunar(Day(NT), Month(NT), Year(NT)) ‘goi hàm Lunar theo câu trúc nây ?
 ‘ Ðê nghi nhu’ hàm TransLu làm: Call lunar(Month(NT), Day(NT), Year(NT))
 ‘TransLu1 = Lday & “-” & Lmonth & isLeap & “-” & CanchiV(Lyear – 0)
                                 ‘Hàm CanchiV bi thiêu!
 End Function

 Public Function TransSolar(d, m, y) As Date ‘Ngay thang nam am lich sang duong lich
 Dim iSd As Date
 iSd = DateSerial(y, m, d) – 70
 Do
 iSd = iSd + 1
 Loop Until TransLu(Day(iSd), Month(iSd), Year(iSd)) = d & “/” & m & “/” & y
 TransSolar = iSd
 End Function

 ‘Cach su dung:
 Private Sub Command1_Click()
     If Days = “” Or Months = “” Or Years = “” Then Exit Sub
     NgayAL = TransLu(Days, Months, Years)
 End Sub

 Private Sub Command2_Click()
 If Years = “” Then Exit Sub
 ThangNhuan = LeapMonth(Years)
 End Sub

 Private Sub Command3_Click()
 If Years = “” Then Exit Sub
 SoNgayNhuan = LeapDay(Years)
 End Sub

 Private Sub Command4_Click()
 If Years = “” Or Months = “” Then Exit Sub
 SoNgayThangT = MonthDays(Years, Months)
 End Sub

 Private Sub Command5_Click()
 If Years = “” Then Exit Sub
 SoNgayNam = YearDays(Years)
 End Sub

 Sub Goi()
 ‘Mang do HoNgocDuc tu xây dung, chu’a thông tin nam ÂL tu 1900-2199
 ‘nam Ðó tháng mây nhuân? gôm mây ngày? Môi tháng còn lai có mây ngày? nam Ðó có mây ngày?
 LunarInfo = Array( _
 &H3C4BD8, &H624AE0, &H4CA570, &H3854D5, &H5CD260, &H44D950, &H315554, &H5656A0, &H409AD0, &H2A55D2, &H504AE0, &H3AA5B6, &H60A4D0, &H48D250, &H33D255, &H58B540, &H42D6A0, &H2CADA2, &H5295B0, &H3F4977, _
 &H644970, &H4CA4B0, &H36B4B5, &H5C6A50, &H466D40, &H2FAB54, &H562B60, &H409570, &H2C52F2, &H504970, &H3A6566, &H5ED4A0, &H48EA50, &H336A95, &H585AD0, &H442B60, &H2F86E3, &H5292E0, &H3DC8D7, &H62C950, _
 &H4CD4A0, &H35D8A6, &H5AB550, &H4656A0, &H31A5B4, &H5625D0, &H4092D0, &H2AD2B2, &H50A950, &H38B557, &H5E6CA0, &H48B550, &H355355, &H584DA0, &H42A5B0, &H2F4573, &H5452B0, &H3CA9A8, &H60E950, &H4C6AA0, _
 &H36AEA6, &H5AAB50, &H464B60, &H30AAE4, &H56A570, &H405260, &H28F263, &H4ED940, &H38DB47, &H5CD6A0, &H4896D0, &H344DD5, &H5A4AD0, &H42A4D0, &H2CD4B4, &H52B250, &H3CD558, &H60B540, &H4AB5A0, &H3755A6, _
 &H5C95B0, &H4649B0, &H30A974, &H56A4B0, &H40AA50, &H29AA52, &H4E6D20, &H39AD47, &H5EAB60, &H489370, &H344AF5, &H5A4970, &H4464B0, &H2C74A3, &H50EA50, &H3D6A58, &H6256A0, &H4AAAD0, &H3696D5, &H5C92E0, _
 &H46C960, &H2ED954, &H54D4A0, &H3EDA50, &H2A7552, &H4E56A0, &H38A7A7, &H5EA5D0, &H4A92B0, &H32AAB5, &H58A950, &H42B4A0, &H2CBAA4, &H50AD50, &H3C55D9, &H624BA0, &H4CA5B0, &H375176, &H5C5270, &H466930, _
 &H307934, &H546AA0, &H3EAD50, &H2A5B52, &H504B60, &H38A6E6, &H5EA4E0, &H48D260, &H32EA65, &H56D520, &H40DAA0, &H2D56A3, &H5256D0, &H3C4AFB, &H6249D0, &H4CA4D0, &H37D0B6, &H5AB250, &H44B520, &H2EDD25, _
 &H54B5A0, &H3E55D0, &H2A55B2, &H5049B0, &H3AA577, &H5EA4B0, &H48AA50, &H33B255, &H586D20, &H40AD60, &H2D4B63, &H525370, &H3E49E8, &H60C970, &H4C54B0, &H3768A6, &H5ADA50, &H445AA0, &H2FA6A4, &H54AAD0, _
 &H4052E0, &H28D2E3, &H4EC950, &H38D557, &H5ED4A0, &H46D950, &H325D55, &H5856A0, &H42A6D0, &H2C55D4, &H5252B0, &H3CA9B8, &H62A930, &H4AB490, &H34B6A6, &H5AAD50, &H4655A0, &H2EAB64, &H54A570, &H4052B0, _
 &H2AB173, &H4E6930, &H386B37, &H5E6AA0, &H48AD50, &H332AD5, &H582B60, &H42A570, &H2E52E4, &H50D160, &H3AE958, &H60D520, &H4ADA90, &H355AA6, &H5A56D0, &H462AE0, &H30A9D4, &H54A2D0, &H3ED150, &H28E952, _
 &H4EB520, &H38D727, &H5EADA0, &H4A55B0, &H362DB5, &H5A45B0, &H44A2B0, &H2EB2B4, &H54A950, &H3CB559, &H626B20, &H4CAD50, &H385766, &H5C5370, &H484570, &H326574, &H5852B0, &H406950, &H2A7953, &H505AA0, _
 &H3BAAA7, &H5EA6D0, &H4A4AE0, &H35A2E5, &H5AA550, &H42D2A0, &H2DE2A4, &H52D550, &H3E5ABB, &H6256A0, &H4C96D0, &H3949B6, &H5E4AB0, &H46A8D0, &H30D4B5, &H56B290, &H40B550, &H2A6D52, &H504DA0, &H3B9567, _
 &H609570, &H4A49B0, &H34A975, &H5A64B0, &H446A90, &H2CBA94, &H526B50, &H3E2B60, &H28AB61, &H4C9570, &H384AE6, &H5CD160, &H46E4A0, &H2EED25, &H54DA90, &H405B50, &H2C36D3, &H502AE0, &H3A93D7, &H6092D0, _
 &H4AC950, &H32D556, &H58B4A0, &H42B690, &H2E5D94, &H5255B0, &H3E25FA, &H6425B0, &H4E92B0, &H36AAB6, &H5C6950, &H4674A0, &H31B2A5, &H54AD50, &H4055A0, &H2AAB73, &H522570, &H3A5377, &H6052B0, &H4A6950, _
 &H346D56, &H585AA0, &H42AB50, &H2E56D4, &H544AE0, &H3CA570, &H2864D2, &H4CD260, &H36EAA6, &H5AD550, &H465AA0, &H30ADA5, &H5695D0, &H404AD0, &H2AA9B3, &H50A4D0, &H3AD2B7, &H5EB250, &H48B540, &H33D556) ” /* Years 2100-2199 */
 End Sub

Đánh dấu các giá trị khác nhau với nhiều màu khác nhau – code VB

Sub Highlight_Duplicate()
Dim ws As Worksheet
Dim cell As Range
Dim myrng As Range
Dim clr As Long
Dim lastcell As Range
Dim i As Long
Dim lastrow As Long
Set ws = ThisWorkbook.ActiveSheet
‘Vung can danh dau gia tri trung nhau
Set myrng = ws.Range(“A1:K” & Range(“C” & ws.Rows.Count).End(xlUp).Row)
With myrng
Set lastcell = .Cells(.Cells.Count)
End With
myrng.Interior.ColorIndex = xlNone
clr = 3
For Each cell In myrng
‘Kiem tra so gia tri trung nhau trong vung, neu co hai gia tri trung nhau tro len thi thuc hien
If Application.WorksheetFunction.CountIf(myrng, cell) > 1 Then
‘Neu la o dau tien cua cac gia tri trung nhau trong vung
If myrng.Find(what:=cell, lookat:=xlWhole, MatchCase:=False, after:=lastcell).Address = cell.Address Then
‘Thiet lap mau
cell.Interior.ColorIndex = clr
clr = clr + 1
i = i + 1
Else
‘Thiet lap mau tu o thu 2 voi cac gia tri trung nhau
cell.Interior.ColorIndex = myrng.Find(what:=cell, lookat:=xlWhole, MatchCase:=False, after:=lastcell).Interior.ColorIndex
End If
End If
Next
‘Lay dong cuoi cung cua vung du lieu
lastrow = Cells(Rows.Count, “A”).End(xlUp).Row
Range(“A” & lastrow + 2).Value = “Tong so co ” & i & ” gia tri trung nhau”
End Sub

Code đổi số sang chữ trong excel và viết hoa đầu câu

Public Function docso(chuyenso) As String
s09 = Array("", " M" & ChrW(7897) & "t", " hai", " ba", " b" & ChrW(7889) & "n", " n" & ChrW(259) & "m", " s" & ChrW(225) & "u", " b" & ChrW(7843) & "y", " t" & ChrW(225) & "m", " ch" & ChrW(237) & "n")
lop3 = Array("", " tri" & ChrW(7879) & "u", " ngh" & ChrW(236) & "n", " t" & ChrW(7927))
'Stop
If Trim(chuyenso) = "" Then
DocSoUni = ""
ElseIf IsNumeric(chuyenso) = True Then
If chuyenso < 0 Then dau = ChrW(226) & "m " Else dau = ""
chuyenso = Application.WorksheetFunction.Round(Abs(chuyenso), 0)
chuyenso = " " & chuyenso
chuyenso = Replace(chuyenso, ",", "", 1)
vt = InStr(1, chuyenso, "E")
If vt > 0 Then
sonhan = Val(Mid(chuyenso, vt + 1))
chuyenso = Trim(Mid(chuyenso, 2, vt - 2))
chuyenso = chuyenso & String(sonhan - Len(chuyenso) + 1, "0")
End If
chuyenso = Trim(chuyenso)
sochuso = Len(chuyenso) Mod 9
If sochuso > 0 Then chuyenso = String(9 - (sochuso Mod 12), "0") & chuyenso
docso = ""
i = 1
lop = 1
Do
n1 = Mid(chuyenso, i, 1)
n2 = Mid(chuyenso, i + 1, 1)
n3 = Mid(chuyenso, i + 2, 1)
baso = Mid(chuyenso, i, 3)
i = i + 3
If n1 & n2 & n3 = "000" Then
If docso <> "" And lop = 3 And Len(chuyenso) - i > 2 Then s123 = " t" & ChrW(7927) Else s123 = ""
Else
If n1 = 0 Then
If docso = "" Then s1 = "" Else s1 = " kh" & ChrW(244) & "ng tr" & ChrW(259) & "m"
Else
s1 = s09(n1) & " tr" & ChrW(259) & "m"
End If
If n2 = 0 Then
If s1 = "" Or n3 = 0 Then
s2 = ""
Else
s2 = " linh"
End If
Else
If n2 = 1 Then s2 = " M" & ChrW(432) & ChrW(7901) & "i" Else s2 = s09(n2) & " m" & ChrW(432) & ChrW(417) & "i"
End If
If n3 = 1 Then
If n2 = 1 Or n2 = 0 Then s3 = " M" & ChrW(7897) & "t" Else s3 = " m" & ChrW(7889) & "t"
ElseIf n3 = 5 And n2 <> 0 Then
s3 = " l" & ChrW(259) & "m"
Else
s3 = s09(n3)
End If
If i > Len(chuyenso) Then
s123 = s1 & s2 & s3
Else
s123 = s1 & s2 & s3 & lop3(lop)
End If
End If
lop = lop + 1
If lop > 3 Then lop = 1
docso = docso & s123
If i > Len(chuyenso) Then Exit Do
Loop
If docso = "" Then docso = "kh" & ChrW(244) & "ng" Else docso = dau & Trim(docso)
Else
docso = chuyenso
End If
End Function



--------------------
Function viethoa(ByVal strContent As String) As String
Dim m As Object
strContent = LCase(strContent)
strContent = Application.Replace(strContent, 1, 1, UCase(Left$(strContent, 1)))
With CreateObject("VBScript.RegExp")
.Pattern = ".s."
.Global = True
For Each m In .Execute(strContent)
strContent = Application.Replace(strContent, m.FirstIndex + 1, m.Length, UCase(m.Value))
Next
End With
viethoa = strContent
End Function