Thứ Tư, 19 tháng 12, 2012

Tra cứu hàm Excel (1)

Danh mục tra cứu này dùng để tra cứu tất cả các hàm được sử dụng trong các phiên bản của Excel. 
I. CÁC HÀM TOÁN HỌC - MATH FUNCTIONS

 

ABS (number): Tính trị tuyệt đối của một số (giá trị tuyệt đối của một số là số luôn luôn dương).

Cú pháp: = ABS(number)
number: Số muốn tính trị tuyệt đối

Ví dụ
:
ABS(2) = 2

ABS(-5) = 5

ABS(A2) = 7 (A2 đang chứa công thức = 3.5 x -2)

CEILING (number, significance) : Làm tròn lên một số (cách xa khỏi số 0) đến bội số gần nhất của significance.
FLOOR (number, significance) : Làm tròn xuống một số đến bội số gần nhất
       Cú pháp:

= CEILING(number, significance)
= FLOOR(number, significance)

  • number: Con số sẽ làm tròn

  • significance: Con số mà bạn cần làm tròn number đến bội số của nó
- Nếu number significancekhác dấu, hàm sẽ báo lỗi #NUM!
- Nếu number là bội số của significance, kết quả là chính số đó
 
         Ví dụ: hình bên


COMBIN (number, number_chosen) : Trả về số tổ hợp được chọn từ một số các phần tử. Thường dùng để xác định tổng số nhóm có được từ một số các phần tử.

Cú pháp: = COMBIN(number, number_chosen)
number: Tổng số phần tử
number_chosen: Số phần tử trong mỗi tổ hợp

Chú ý
:
  • Nếu các đối số là số thập phân, hàm chỉ lấy phần nguyên
  • Nếu các đối số không phải là số, COMBIN sẽ báo lỗi #VALUE!
  • Nếu number < 0, number_chosen < 0, hoặc number < number_chosen, COMBIN sẽ báo lỗi #NUM!
  • Tổ hợp khác với hoán vị: Tổ hợp không quan tâm đến thứ tự của các phần tử trong mỗi tổ hợp; còn hoán vị thì thứ tự của mỗi phần tử đều có ý nghĩa.
  • COMBIN được tính như công thức sau đây (với n = number, k = number_chosen)


Trong đó:


Ví dụ:
Với 4 phần tử Mai, Lan, Cúc, Trúc có thể xếp được bao nhiêu tổ hợp khác nhau, với mỗi tổ hợp gồm 2 phần tử ?
= COMBIN(4, 2) = 6

6 tổ hợp này là: Mai-Lan, Mai-Cúc, Mai-Trúc, Lan-Cúc, Lan-TrúcCúc-Trúc

EVEN (number) : Làm tròn một số đến số nguyên chẵn gần nhất

ODD (number): Làm tròn một số đến số nguyên lẻ gần nhất

Cú pháp: = EVEN(number
               = ODD(number)


Ví dụ:
EVEN(14.2) = 16
EVEN(-23) = 24
ODD(58.1) = 59
ODD(-6) = -7

EXP (number) : Tính lũy thừa cơ số e của một số
Cú pháp: = EXP(number)
number: số mũ của cơ số e

Lưu ý
:

- Để tính lũy thừa của cơ số khác, bạn có thể dùng toán tử ^ (dấu mũ), hoặc dùng hàm POWER()

- Hàm EXP() là nghịch đảo của hàm LN(): tính logarit tự nhiên của một số

Ví dụ:

EXP(1) = 2.718282 (là chính cơ số e)
EXP(2) = 7.389056 (bình phương của e)
 
FACT (number) : Tính giai thừa của một số
Cú pháp: = FACT(number)
number: số cần tính giai thừa

Lưu ý
:
- number phải là một số dương

- Nếu
number là số thập phân, FACT() sẽ lấy phần nguyên của number để tính

Ví dụ:
FACT(5) = 120 (5! = 1 x 2 x 3 x 4 x 5 = 120)

          FACT(2.9) = 2 (2! = 1 x 2 = 2)

          FACT(0) = 1 (0! = 1)

          FACT(-3) = #NUM!

FACTDOUBLE (number) : Tính giai thừa cấp hai của một số


Cú pháp: = FACTDOUBLE(number)
number: số cần tính giai thừa cấp hai

Lưu ý
:
- number phải là một số dương

- Nếu
number là số thập phân, FACTDOUBLE() sẽ lấy phần nguyên của number để tính

Ví dụ:
FACTDOUBLE(6) = 48 (6!! = 6 x 4 x 2 = 24)

FACTDOUBLE(7) = 105 (7!! = 7 x 5 x 3 x 1 = 105)

GCD (number1, number2, ...) : Tìm ước số chung lớn nhất của các số.
GCD là viết tắt của chữ Greatest Common Divisor
Cú pháp: = GCD(number1, number2 [,number3...])
number1, number2...: những số mà bạn bạn cần tìm ước số chung lớn nhất

GCD() có thể tìm ước số chung lớn nhất của một dãy có đến 255 giá trị (với Excel 2003 trở về trước thì con số này là 19)

Lưu ý
:
Nếu có bất kỳ một number nào < 0, GCD() sẽ báo lỗi #NUM!

Nếu có bất kỳ một number nào không phải là một con số, GDC() sẽ báo lỗi #VALUE!

Nếu number là số thập phân, GCD() chỉ tính toán với phần nguyên của nó.

Ví dụ: GCD(5, 2) = 1 ; GCD(24, 36) = 12 ; GCD(5, 0) = 5
 
INT (number) : Làm tròn một số xuống số nguyên gần nhất
TRUNC (number, num_digits) : Lấy phần nguyên của một số (mà không làm tròn)
Cú pháp:

= INT(number)


= TRUNC(number [, num_digits])
  • number: Số cần làm tròn
  • num_digits: Là một số nguyên, chỉ cách mà bạn muốn cắt bớt số
num_digits > 0 : nếu number là một số thập phân, thì num_digits chỉ ra số con số thập phân mà bạn muốn giữ lại (sau dấu phẩy)

num_digits = 0 hoặc không nhập: cắt bỏ hết phần thập phân của number (nếu có)

num_digits < 0 : làm tròn number thành một số nguyên và làm tròn number sang trái thành một bội số của 10 (xem thêm ở ví dụ)

Hàm INT() làm tròn một số tới số nguyên gần nhất

Đối với số dương, hàm INT() và TRUNC() cho kết quả giống nhau (num_digits của TRUNC() = 0 hoặc không có), nhưng đối với số âm thì hai hàm này sẽ cho kết quả hoàn toàn khác nhau.
Ví dụ:
INT( 123.456) = 123 | TRUNC( 123.456) = 123

INT(-123.456) = -124 | TRUNC(-123.456) = -123
Khi num_digits khác 0, TRUNC() khác hẳn với ROUND() ở chỗ: ROUND() thì làm tròn, còn TRUNC() chỉ cắt bỏ bớt số chứ không làm tròn.

Một số ví dụ về hàm TRUNC()

LCM (number1, number2, ...) : Tìm bội số chung nhỏ nhất của các số.
LCM là viết tắt của chữ Lowest common multiple
Cú pháp: = LCM(number1, number2 [,number3...])
number1, number2...: những số mà bạn bạn cần tìm bội số chung nhỏ nhất

LCM() có thể tìm
bội số chung nhỏ nhất của một dãy có đến 255 giá trị (với Excel 2003 trở về trước thì con số này là 19)

Lưu ý
:
Nếu có bất kỳ một number nào < 0, GDC() sẽ báo lỗi #NUM!

Nếu có bất kỳ một number nào không phải là một con số, GDC() sẽ báo lỗi #VALUE!

Nếu
number là số thập phân, LCM() chỉ tính toán với phần nguyên của nó.

Ví dụ: LCM(5, 2) = 10 ; LCM(24, 36) = 72

LN (number) : Tính logarit tự nhiên của một số

Cú pháp: = LN(number)
number: số thực, dương mà ta muốn tính logarit tự nhiên (logarit cơ số e) của nó

Lưu ý
:
- Hàm LN() là nghịch đảo của hàm EXP(): tính lũy thừa của cơ số e

Ví dụ:
LN(86) = 4.454347 (logarit cơ số e của 86)
LN(2.7181818) = 1 (logarit cơ số e của e)
LN(EXP(3)) = 3 (logarit cơ số e của e lập phương)

LOG (number) : Tính logarit của một số

Cú pháp: = LOG(number [, base])
number: Số thực, dương mà ta muốn tính logarit tự nhiên (logarit cơ số e) của nó
base: Cơ số để tính logarit (mặc định là 10) - Nếu bỏ trống, hàm LOG() tương đương với hàm LOG10()

Ví dụ:
LOG(10) = 1 (logarit cơ số 10 của 10)
LOG(8, 2) = 3 (logarit cơ số 2 của 8)
LOG(86, 2.7182818) = 4.454347 (logarit cơ số e của 86)

LOG10 (number) : Tính logarit cơ số 10 của một số


Tính logarit cơ số 10 của một số
Cú pháp: = LOG10(number)
number: số thực, dương mà ta muốn tính logarit tự nhiên (logarit cơ số e) của nó
Ví dụ:
LOG10(10) = LOG(10) = 1 (logarit cơ số 10 của 10)
LOG10(86) = LOG(86) = 1.93449845 (logarit cơ số 10 của 86)
LOG10(1E5) = 5 (logarit cơ số 10 của 1E5)
LOG10(10^5) = 5 (logarit cơ số 10 của 10^5)

MDETERM (array) : Tính định thức của một ma trận.

MDETERM viết tắt từ chữ Matrix Determinant
Cú pháp: = MDETERM(array)
array: mảng giá trị chứa ma trận vuông (có số hàng và số cột bằng nhau)

Lưu ý
:
- array có thể một dãy ô như A1:C3; hoặc một mảng như {1,2,3 ; 4,5,6 ; 7,8,9}; hoặc là một khối ô đã được đặt tên...

- Hàm MDETERM() sẽ báo lỗi #VALUE! khi:
  • array không phải là ma trận vuông (số hàng khác số cột)
  • Có bất kỳ 1 vị trí nào trong array là rỗng hoặc không phải là dữ liệu kiểu số
- Hàm MDETERM() có thể tính chính xác với ma trận 4 x 4 (có 16 ký số)

- Ví dụ về cách tính toán của
hàm MDETERM() với ma trận 3 x 3 (A1:C3):
MDETERM(A1:C3) = A1*(B2*C3 - B3*C2) + A2*(B3*C1 - B1*C3) + A3*(B1*C2 - B2*C1)

Ví dụ:
MDETERM(A1:D4) = 88


MDETERM(A1:C4) = #VALUE! (A1:C4 không phải là ma trận vuông)

MDETERM({3,6,1 ; 1,1,0 ; 3,10,2}) = 1

MDETERM({3,6 ; 1,1}) = 1
 
MINVERSE (array) : Tìm ma trận nghịch đảo của một ma trận

Cú pháp: = MINVERSE(array)
array: mảng giá trị chứa ma trận vuông (có số hàng và số cột bằng nhau)

Lưu ý
:
- array có thể một dãy ô như A1:C3; hoặc một mảng như {1,2,3 ; 4,5,6 ; 7,8,9}; hoặc là một khối ô đã được đặt tên...

- Giống hàm MDETERM, hàm MINVERSE() sẽ báo lỗi #VALUE! khi:
  • array không phải là ma trận vuông (số hàng khác số cột)

  • Có bất kỳ 1 vị trí nào trong array là rỗng hoặc không phải là dữ liệu kiểu số

  • Ma trận không thể tính nghịch đảo (ví dụ ma trận có định thức = 0)
- Hàm MINVERSE() có thể tính chính xác với ma trận 4 x 4 (có 16 ký số)


Ví dụ về cách sử dụng hàm
MINVERSE():
Ví dụ bạn có một ma trận A1:D4, để tìm ma trận nghịch đảo của ma trận này, bạn quét chọn một khối ô tương ứng với A1:D4, ví dụ A6:D9 (cùng có 4 hàng và 4 cột), tại A6, gõ công thức = MINVERSE(A1:D4) và sau đó nhấn Ctrl-Shift-Enter, bạn sẽ có kết quả tại A6:D9 là một ma trận nghịch đảo của ma trận A1:D4

MMULT (array1, array2) : Tính tích hai ma trận

Cú pháp: = MMULT(array1, array2)
array1, array 2: mảng giá trị chứa ma trận
Lưu ý:
- array1, array2 có thể một dãy ô như A1:C3; hoặc một mảng như {1,2,3 ; 4,5,6 ; 7,8,9}; hoặc là một khối ô đã được đặt tên...

- Số cột của
array1 phải bằng số dòng của array2
- Công thức tính tích hai ma trận (A = B x C) có dạng như sau:


Trong đó: i là số hàng của array1 (B), j là số cột của array2 (C); n là số cột của array1 (= số dòng của array2)
- Nếu có bất kỳ một phần tử nào trong hai ma trận là rỗng hoặc không phải là dữ liệu kiểu số, MMULT() sẽ báo lỗi #VALUE!

- Để có kết quả chính xác ở ma trận kết quả, phải dùng công thức mãng
Ví dụ:
Mời bạn xem hình sau:


Để tính tích của hai ma trận B và C, quét chọn khối C7:D8
gõ công thức = MMULT(A2:C3,E2:F4) rồi nhấn Ctrl-Shift-Enter
sẽ có kết quả là ma trận A như trên hình.

MOD (number, divisor) : Lấy phần dư của một phép chia.

Cú pháp: = MOD(number, divisor)
number: Số bị chia
divisor: Số chia
Ví dụ: MOD(24, 10) = 4 (24 chia 10 được 2, dư 4)

MROUND (number, multiple) : Làm tròn một số đến bội số của một số khác

Cú pháp: = MROUND(number, multiple)
  • number: Con số sẽ làm tròn

  • multiple: Con số mà bạn cần làm tròn number đến bội số của nó
- Nếu number multiple khác dấu, hàm sẽ báo lỗi #NUM!
- Nếu number multiple bằng nhau, kết quả là chính số đó
- MROUND() sẽ làm tròn lên, nếu phần chia của phép chia number cho multiple lớn hơn hoặc bằng 1/2 multiple, và làm tròn xuống nếu phần chia của phép chia number cho multiple nhỏ hơn 1/2 multiple

Ví dụ
:
MROUND(5, 2) = 6 (do 5/2 > 2/2, bội số của 2 gần nhất mà lớn hơn 5 là 6)
MROUND(11, 5) = 10 (do 11/5 < 5/2, bội số của 5 gần nhất mà nhỏ hơn 11 là 10)
MROUND(13, 5) = 15 (do 13/5 > 5/2, bội số của 5 gần nhất mà lớn hơn 13 là 15)
MROUND(5, 5) = 5 (number và multiple bằng nhau)
MROUND(7.31, 0.5) = 7.5 (do 7.31/0.5 > 0.5/2, bội số của 0.5 gần nhất mà lớn hơn 7.31 là 7.5)
MROUND(-11, -5) = -10 (do -11/-5 > -5/2, bội số của -5 gần nhất mà lớn hơn -11 là -10)
MROUND(-11, 5) = #NUM! (number và multiple khác dấu)

MULTINOMIAL (number1, number2, ...) : Tính tỷ lệ giữa giai thừa tổng và tích giai thừa các số

Cú pháp: = MULTINOMIAL(number1, number2, ...)
number1, number2,... : là những con số mà ta muốn tính tỷ lệ giữa giai thừa tổng và tích giai thừa của chúng
Ghi chú:
  • number1, number2, ... có thể lên đến 255 con số (với Excel 2003 trở về trước, con số này chỉ là 30)

  • Nếu có bất kỳ một number nào không phải là dữ liệu kiểu số, MULTINOMIAL() sẽ báo lỗi #VALUE!

  • Nếu có bất kỳ một number nào < 0, MULTINOMIAL() sẽ báo lỗi #NUM!

Ví dụ:
MULTINOMIAL(2, 3, 4) = 1,260
Giả sử ta có 3 số a, bc
 

PI () : Trả về giá trị con số Pi

Cú pháp: = PI()
Hàm này không có tham số
Ví dụ:
PI() = 3.14159265358979
PI()/2 = 1.570796327
PI()*(3^2) = 28.27433388

POWER (number, power) : Tính lũy thừa của một số

Cú pháp: = POWER(number, power)
number: Số cần tính lũy thừa

power: Số mũ
Ví dụ:
POWER(5, 2) = 25
POWER(98.6, 3.2) = 2,401,077
POWER(4, 5/4) = 5.656854

PRODUCT(number1, number2, ...) : Tính tích các số

Cú pháp: = PRODUCT(number1, number2, ...)
number1, number2,... : là những con số mà ta muốn tính tỷ lệ giữa giai thừa tổng và tích giai thừa của chúng
Ghi chú:
  • number1, number2, ... có thể lên đến 255 con số (với Excel 2003 trở về trước, con số này chỉ là 30)

  • Nếu các number nằm trong một mảng dữ liệu, thì chỉ có những giá trị kiểu số trong mảng đó mới được tính; những giá trị không phải là kiểu số sẽ được bỏ qua.

Ví dụ:
PRODUCT(2, 3, 4) = 24

QUOTIENT (numberator, denominator) : Lấy phần nguyên của một phép chia

Cú pháp: = QUOTIENT(numberator, denominator)
numberator: Số bị chia

denominator: Số chia

Ghi chú
:

  • Nếu các thông số không phải là dữ liệu kiểu số, hàm sẽ báo lỗi #VALUE!

  • Hàm này tương đương với hàm INT(): QUOTIENT(a, b) = INT(a/b)

Ví dụ
:

QUOTIENT(5, 2) = 2
QUOTIENT(4.5, 3.1) = 1
QUOTIENT(-10, 3) = -3

RAND () : Trả về một số ngẫu nhiên giữa 0 và 1

Cú pháp: = RAND()

Hàm RAND() trả về một con số ngẫu nhiên lớn hơn hoặc bằng 0 và nhỏ hơn 1. Nếu dùng hàm để lấy một giá trị thời gian, thì RAND() là hàm thích hợp nhất.


Bên cạnh đó, cũng có những cách để ép RAND() cung cấp cho chúng ta những con số ngẫu nhiên nằm giữa hai giá trị nào đó.
  • Để lấy một số ngẫu nhiên lớn hơn hoặc bằng 0 và nhỏ hơn n, ta dùng cú pháp:
RAND() * n
Ví dụ, công thức sau đây sẽ cung cấp cho chúng ta một con số ngẫu nhiên giữa 0 và 30:
= RAND() * 30
  • Trường hợp khác, mở rộng hơn, chúng ta cần có một con số ngẫu nhiên lớn hơn hoặc bằng số m nào đó, và nhỏ hơn số n nào đó, ta dùng cú pháp:
RAND() * (n - m) + m
Ví dụ, để lấy một số ngẫu nhiên lớn hơn hoặc bằng 100 và nhỏ hơn 200, ta dùng công thức:
= RAND() * (200 - 100) + 100
Lưu ý:

Do hàm RAND() là một hàm biến đổi (volatile function), tức là kết quả do RAND() cung cấp có thể thay đổi mỗi khi bạn cập nhật bảng tính hoặc mở lại bảng tính, ngay cả khi bạn thay đổi một ô nào đó trong bảng tính...

Để có một kết quả ngẫu nhiên nhưng không thay đổi, bạn dùng cách sau:
Sau khi nhập công thức = RAND() vào, bạn nhấn F9 và sau đó nhấn Enter. Động tác này sẽ lấy một con số ngẫu nhiên ngay tại thời điểm gõ công thức, nhưng sau đó thì luôn dùng con số này, vì trong ô nhập công thức sẽ không còn hàm RAND() nữa.

RANDBETWEEN (bottom, top) : Trả về một số ngẫu nhiên giữa một khoảng tùy chọn

Cú pháp: = RANDBETWEEN(bottom, top)
bottom: Số nhỏ nhất trong dãy tìm số ngẫu nhiên (kết quả sẽ lớn hơn hoặc bằng số này)

top: Số lớn nhất trong dãy tìm số ngẫu nhiên (kết quả sẽ nhỏ hơn hoặc bằng số này)

Ví dụ
:
= RANDBETWEEN(0, 59) sẽ cho kết quả là một số nguyên nằm trong khoảng 0 tới 59.

ROMAN (number, form) : Chuyển một số (Ả-rập) về dạng số La-mã theo định dạng tùy chọn

Cú pháp: = ROMAN(number, form)
number: Số cần chuyển đổi

form: dạng chuyển đổi
0 (hoặc TRUE, hoặc không nhập): Dạng cổ điển

1 cho đến 3: Dạng cổ điển nhưng được rút gọn, số càng lớn rút gọn càng nhiều (xem thêm ở ví dụ)

4 (hoặc FALSE): Dạng hiện đại
Chú ý:
  • number phải là số dương, nếu number < 0 hàm sẽ báo lỗi #VALUE!

  • Nếu number là số thập phân, ROMAN() chỉ chuyển đổi phần nguyên của nó

  • Hàm ROMAN() chỉ xử lý được tới số lớn nhất là 3999, nếu number > 3999 hàm sẽ báo lỗi #VALUE!

  • Sau khi đã chuyển đổi, kết quả sẽ là một dữ liệu dạng text, và không thể tính toán với nó được nữa

Ví dụ:
ROMAN(499, 0) = CDXCIX = ROMAN(499) = ROMAN(499, TRUE)

ROMAN(499, 1) = LDVLIV

ROMAN(499, 2) = XDIX

ROMAN(499, 3) = VDIV

ROMAN(499, 4) = ID = ROMAN(499, FALSE)

ROMAN(2008) = MMVIII

ROUND (number, num_digits) : Làm tròn một số theo sự chỉ định

Cú pháp: = ROUND(number, num_digits)
  • number: Con số sẽ làm tròn

  • num_digits: Là một số nguyên, chỉ cách mà bạn muốn làm tròn
num_digits > 0 : làm tròn đến số thập phân được chỉ định

num_digits = 0 : làm tròn đến số nguyên gần nhất

num_digits < 0 : làm tròn đến phần nguyên được chỉ định

Ví dụ
: Với con số 1234.5678
ROUND(1234.5678, 3) = 1234.568
ROUND(1234.5678, 2) = 1234.57
ROUND(1234.5678, 1) = 1234.6
ROUND(1234.5678, 0) = 1235
ROUND(1234.5678, -1) = 1230
ROUND(1234.5678, -2) = 1200
ROUND(1234.5678, -3) = 1000

ROUNDDOWN (number, num_digits) : Làm tròn xuống một số theo sự chỉ định
ROUNDUP (number, num_digits) : Làm tròn lên một số theo sự chỉ định

Cú pháp:

= ROUNDDOWN(number, num_digits)
= ROUNDUP(number, num_digits)
  • number: Con số sẽ làm tròn

  • num_digits: Là một số nguyên, chỉ cách mà bạn muốn làm tròn
num_digits > 0 : làm tròn đến số thập phân được chỉ định

num_digits = 0 : làm tròn đến số nguyên gần nhất

num_digits < 0 : làm tròn đến phần nguyên được chỉ định

Ví dụ
: So sánh giữa ROUNDDOWN() và ROUNDUP()

SERIESSUM (x, n, m, coefficients) : Tính tổng lũy thừa của một chuỗi số



Cú pháp
: = SERIESSUM(x, n, m, coefficients)
x : giá trị nhập vào cho chuỗi lũy thừa

n : lũy thừa khởi tạo để tăng tới
x

m : bước tăng cho mỗi phần tử trong chuỗi

coefficients : tập hợp hệ số sẽ được nhân với mỗi lũy thừa của
x

Các thông số này phải là các dữ liệu kiểu số, nếu không, hàm sẽ báo lỗi #VALUE!

Ví dụ
:
SERIESSUM(5, 0, 2, {1, 2, 3, 4}) = 64,426

Diễn giải chi tiết: (x = 5, n = 0, m = 2,
coefficients = 1, 2, 3, 4)

SIGN (number) : Trả về dấu (đại số) của một số

Cú pháp: = SIGN(number)

Ví dụ
:

SIGN(10) = 1
SIGN(4-4) = 0
SIGN(-0.057) = -1

SQRT (number) : Tính căn bậc hai của một số

Cú pháp: = SQRT(number)
number: Số thực, dương (nếu number < 0 hàm sẽ báo lỗi #NUM!)

Ví dụ: Giả sử ở ô A2, có con số -16
SQRT(16) = 4
SQRT(A2) = #NUM!
SQRT(ABS(A2)) = 4

SQRTPI (number) : Tính căn bậc hai của một số được nhân với Pi

Cú pháp: = SQRTPI(number)
number: Số thực, dương nhân với Pi (nếu number < 0 hàm sẽ báo lỗi #NUM!)

Ví dụ: Giả sử ở ô A2, có con số -16
SQRT(1) = 1.772454 (căn bậc hai của Pi)
SQRT(2) = 2.506628 (căn bậc hai của 2*Pi)
 
SUBTOTAL (function_num, ref1, ref2, ...) : Tính toán cho một nhóm con trong một danh sách tùy theo phép tính được chỉ định


Cú pháp: = SUBTOTAL(function_num, ref1, ref2,...)
Function_num: Các con số từ 1 đến 11 (hay 101 đến 111) qui định hàm nào sẽ được dùng để tính toán trong SUBTOTAL

Ref1
, ref2: Các vùng địa chỉ tham chiếu mà bạn muốn thực hiện phép tính trên đó.
Trong Excel 2007, bạn có thể dùng đến 254 ref (với Excel 2003 trở vế trước thì con số này chỉ là 29)

Ghi chú
:
  • Nếu có hàm SUBTOTAL khác đặt lồng trong các đối số ref1, ref2,… thì các hàm lồng này sẽ bị bỏ qua không được tính, nhằm tránh trường hợp tính toán 2 lần.
  • Đối số function_num nếu từ 1 đến 11 thì hàm SUBTOTAL tính toán bao gồm cả các giá trị ẩn trong tập số liệu (hàng ẩn). Đối số function_num nếu từ 101 đến 111 thì hàm SUBTOTAL chỉ tính toán cho các giá trị không ẩn trong tập số liệu (bỏ qua các giá trị ẩn).
  • Hàm SUBTOTAL sẽ bỏ qua không tính toán tất cả các hàng bị ẩn bởi lệnh Filter (Auto Filter) mà không phụ thuộc vào đối số function_num được dùng (1 giống 101...).
  • Hàm SUBTOTAL được thiết kế để tính toán cho các cột số liệu theo chiều dọc, nó không được thiết kế để tính theo chiều ngang.
  • Hàm này chỉ tính toán cho dữ liệu 2-D, do vậy nếu dữ liệu tham chiếu dạng 3-D (Ví dụ về tham chiếu 3-D: =SUM(Sheet2:Sheet13!B5) thì hàm SUBTOTAL báo lỗi #VALUE
Ví dụ:
SUBTOTAL(9, {120, 10, 150, 23}) = 303 = 120 + 10 + 150 + 23
SUBTOTAL(1, {120, 10, 150, 23}) = 75.75 = (120 + 10 + 150 + 23) / 4
 
SUM (number1, number2, ...) : Tính tổng các số

Cú pháp: = SUM(number1 [, number2...])

Trong Excel 2007, bạn có thể dùng SUM() để để tính tổng của 255 giá trị lại với nhau (trong những version trước, con số này chỉ là 30)

Ví dụ: = SUM(A2:A13, C2:C13, E2:E13)
 
SUMIF
(range, criteria, sum_range) : Tính tổng các ô thỏa một điều kiện chỉ định

Cú pháp: = SUMIF(range, criteria, sum_range)
Range : Dãy các ô để tính tổng, có thể là ô chứa số, tên, mảng, hay tham chiếu đến các ô chứa số. Ô rỗng và ô chứa giá trị text sẽ được bỏ qua.

Criteria
: Điều kiện để tính tổng. Có thể ở dạng số, biểu thức, hoặc text. Ví dụ, criteria có thể là 32, "32", "> 32", hoặc "apple", v.v...

Sum_range
: Là vùng thực sự để tính tổng. Nếu bỏ qua, Excel sẽ coi như sum_range = range.

Lưu ý
:
  • Sum_range không nhất thiết phải cùng kích thước với range. Vùng thực sự để tính tổng được xác định bằng ô đầu tiên phía trên bên trái của sum_range, và bao gồm thêm những ô tương ứng với kích thước của range. Ví dụ:
    - Nếu Range là A1:A5, Sum_range là B1:B5, thì vùng thực sự để tính tổng là B1:B5
    - Nếu Range là A1:A5, Sum_range là B1:B3, thì vùng thực sự để tính tổng là B1:B5
    - Nếu Range là A1:B4, Sum_range là C1:D4, thì vùng thực sự để tính tổng là C1:D4
    - Nếu Range là A1:B4, Sum_range là C1:D2, thì vùng thực sự để tính tổng là C1:D4

  • Có thể dùng các ký tự đại diện trong điều kiện: dấu ? đại diện cho một ký tự, dấu * đại diện cho nhiều ký tự (nếu như điều kiện là tìm những dấu ? hoặc *, thì gõ thêm dấu ~ ở trước dấu ? hay *).
  • Khi điều kiện để tính tổng là những ký tự, SUMIF() không phân biệt chữ thường hay chữ hoa.


Ví dụ
: Có bảng tính như sau
Tính tổng của những huê hồng mà có doanh thu > 160,000 ?
= SUMIF(A2:A5, ">160000", B2:B5) = 63,000
Tính tổng của những doanh thu > 160,000 ?
= SUMIF(A2:A5, ">160000") = 900,000
Tính tổng của những huê hồng mà có doanh thu = 300,000 ?
= SUMIF(A2:A5, "=300000", B2:B3) = 21,000

SUMIFS
(sum_range, criteria_range1, criteria1, criteria_range2, criteria2, …) : Tính tổng các ô thỏa nhiều điều kiện chỉ định
Cú pháp: = SUMIFS(sum_range, criteria_range1, criteria1, criteria_range2, criteria2, ...)
Sum_range : Dãy các ô để tính tổng, có thể là ô chứa số, tên, mảng, hay tham chiếu đến các ô chứa số. Ô rỗng và ô chứa giá trị text sẽ được bỏ qua.

Criteria_range1
, criteria_range2...
: Có thể có từ 1 đến 127 vùng dùng để liên kết với các điều kiện cho vùng.

Criteria1
, criteria2...
: Có thể có từ 1 đến 127 điều kiện để tính tổng. Chúng có thể ở dạng số, biểu thức, hoặc text. Ví dụ, criteria có thể là 32, "32", "> 32", hoặc "apple", v.v...

Lưu ý
:
  • Mỗi ô trong sum_range chỉ được tính tổng nếu tất cả các điều kiên tương ứng với ô đó đều đúng. Nếu thỏa các điều kiện, nó sẽ bằng 1, còn không, thì nó bằng 0.
  • Không giống như những đối số range criteria của hàm SUMIF, trong hàm SUMIFS, mỗi vùng criteria_range phải có cùng kích thước và hình dạng giống như sum_range.
  • Có thể dùng các ký tự đại diện trong các điều kiện: dấu ? đại diện cho một ký tự, dấu * đại diện cho nhiều ký tự (nếu như điều kiện là tìm những dấu ? hoặc *, thì gõ thêm dấu ~ ở trước dấu ? hay *)

  • Khi điều kiện để đếm là những ký tự, SUMIFS() không phân biệt chữ thường hay chữ hoa.


Ví dụ 1
: Có bảng tính như sau
Tính tổng số tiền của các tài khoản có lãi suất năm 2000 > 3% và lãi suất năm 2001 ≥ 2% ?
SUMIFS(B2:E2, B3:E3, ">3%", B4:E4, ">=2%") = $500
Tính tổng số tiền của các tài khoản có lãi suất năm 2002 là từ 1% đến 3% và lãi suất năm 2001 > 1% ?
SUMIFS(B2:E2, B5:E5, ">= 1%", B5:E5, "<= 3%", B4:E4, "> 1%") = $8,711

Ví dụ 2
: Có bảng tính như sau
Hãy tính tổng lượng mưa của những ngày có nhiệt độ trung bình > 40 (độ) và tốc độ gió trung bình < 10 (miles/giờ) ?
SUMIFS(B2:E3, B4:E5, ">= 40", B6:E7, "< 10") = 3.5 (inches)


SUMPRODUCT
(array1, array2, ...) : Tính tổng các tích của các phần tử trong các mảng dữ liệu

Cú pháp: = SUMPRODUCT(array1, array2, ...)
array1, array2, ... : Có thể dùng từ 2 tới 255 mảng (với Excel 2003 trở về trước thì con số này chỉ là 30) và các mảng này phải cùng kích thước với nhau
Lưu ý:
  • Nếu các mảng không cùng kích thước, SUMPRODUCT sẽ báo lỗi #VALUE!

  • Bất kỳ một phần tử nào trong mảng không phải là dữ liệu kiểu số, sẽ được SUMPRODUCT coi như bằng 0 (zero)
Ví dụ:


SUMPRODUCT(A1:B3, C1:D3) = 156
Cách tính: 156 = (3*2)+(4*7)+(8*6)+(6*7)+(1*5)+(9*3)
Nếu dùng SUM() với công thức mảng, sẽ cho kết quả tương đương:
{SUM(A1:B3 * C1:D3)} = SUMPRODUCT(A1:B3, C1:D3) = 156
 
SUMSQ (number1, number2, ...) : Tính tổng bình phương của các số
Cú pháp: = SUMSQ(number1, number2, ...)
number1, number2, ... : Có thể dùng đến 255 tham số (với Excel 2003 trở về trước, con số này chỉ là 30)
Các tham số (number) có thể là một số, là một mảng, một tên, hay là một tham chiếu đến một ô chứa số, v.v...

Ví dụ: SUMSQ(3, 4) = (3^2) + (4^2) = 9 + 16 = 25

SUMX2MY2 (array_x, array_y) : Tính tổng của hiệu bình phương của các phần tử trong hai mảng giá trị
SUMX2PY2 (array_x, array_y) : Tính tổng của tổng bình phương của các phần tử trong hai mảng giá trị
SUMXMY2 (array_x, array_y) : Tính tổng của bình phương của hiệu các phần tử trong hai mảng giá trị

  • SUMX2MY2: Tổng của hiệu hai bình phương của các phần tử tương ứng trong 2 mảng dữ liệu
  • SUMX2PY2: Tổng của tổng hai bình phương của các phần tử tương ứng trong 2 mảng dữ liệu
  • SUMXMY2: Tổng của bình phương của hiệu các phần tử tương ứng trong 2 mảng dữ liệu

Cú pháp:
= SUMX2MY2(array_x, array_y)

= SUMX2PY2(array_x, array_y)

= SUMXMY2(array_x, array_y)
array_x array_y là các dãy ô hoặc giá trị kiểu mảng

Lưu ý:
  • array_x array_y bắt buộc phải có cùng kích thước, nếu không, hàm sẽ báo lỗi #NA!

  • Nếu trong array_x hoặc array_y có những giá trị kiểu text, kiểu logic hoặc rỗng, thì sẽ được bỏ qua (không tính), tuy nhiên các giá trị = 0 vẫn được tính.

Ví dụ
:
Với hai mảng X = {1, 2, 3, 4} và Y = {5, 6, 7, 8}

SUMX2MY2({1, 2, 3, 4}, {5, 6, 7, 8}) = -144
= (1^2 - 5^2) + (2^2 - 6^2) + (3^2 - 7^2) + (4^2 - 8^2) = -144
SUMX2PY2({1, 2, 3, 4}, {5, 6, 7, 8}) = 204
= (1^2 + 5^2) + (2^2 + 6^2) + (3^2 + 7^2) + (4^2 + 8^2) = -204
SUMXMY2({1, 2, 3, 4}, {5, 6, 7, 8}) = 64
= (1 - 5)^2 + (2 - 6)^2 + (3 - 7)^2 + (4 - 8)^2 = 64
 
(nguồn: giaiphapexcel.com) 

Không có nhận xét nào:

Đăng nhận xét