リストまたはライブラリの集計列で、次の例を使用できます。列参照を含まない例については、列の既定値を指定するために使用できます。
この記事の内容
条件式
日付と時刻の式
数式
文字列の式
条件式
次の式を使用すると、ステートメントの条件をテストして Yes または No 値を返したり、OK または Not OK などの代替値をテストしたり、null 値を表す空白またはダッシュを返したりできます。
この比較を行うには、IF 関数を使用します。
列 1 | 列 2 | 式 | 説明 (予想される結果) |
---|
15000 | 9000 | =[列 1]>[列 2] | 列 1 の値が列 2 の値より大きいかどうかを調べます (Yes) |
15000 | 9000 | =IF([列 1]<=[列 2], "OK", "Not OK") | 列 1 の値が列 2 の値以下かどうかを調べます (Not OK) |
論理値 (Yes または No) の結果を返すには、AND 関数、OR 関数、および NOT 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (予想される結果) |
---|
15 | 9 | 8 | =AND([列 1]>[列 2], [列 1]<[列 3]) | 15 が 9 より大きく、かつ 8 より小さいかどうかを調べます (No) |
15 | 9 | 8 | =OR([列 1]>[列 2], [列 1]<[列 3]) | 15 が 9 より大きいか、または 8 より小さいかどうかを調べます (Yes) |
15 | 9 | 8 | =NOT([列 1]+[列 2]=24) | 15 に 9 を加算した結果が 24 に等しくないかどうかを調べます (No) |
別の計算の結果、または Yes/No 以外の値を使用する場合は、IF 関数、AND 関数、または OR 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (予想される結果) |
---|
15 | 9 | 8 | =IF([列 1]=15, "OK", "Not OK") | 列 1 の値が 15 と等しい場合、"OK" を返します (OK) |
15 | 9 | 8 | =IF(AND([列 1]>[列 2], [列 1]<[列 3]), "OK", "Not OK") | 15 が 9 より大きく、かつ 8 より小さい場合、"OK" を返します (Not OK) |
15 | 9 | 8 | =IF(OR([列 1]>[列 2], [列 1]<[列 3]), "OK", "Not OK") | 15 が 9 より大きいか、または 8 より小さい場合、"OK" を返します (OK) |
0 を表示するには、簡単な計算を行います。空白またはダッシュを表示するには、IF 関数を使用します。
列 1 | 列 2 | 式 | 説明 (予想される結果) |
---|
10 | 10 | =[列 1]-[列 2] | 1 つ目の数値から 2 つ目の数値を減算します (0) |
15 | 9 | =IF([列 1]-[列 2],"-",[列 1]-[列 2]) | 値が 0 の場合、ダッシュを返します (-) |
エラー値の代わりにダッシュ、#N/A、または NA を表示するには、ISERROR 関数を使用します。
列 1 | 列 2 | 式 | 説明 (予想される結果) |
---|
10 | 0 | =[列 1]/[列 2] | エラーの結果 (#DIV/0) |
10 | 0 | =IF(ISERROR([列 1]/[列 2]),"NA",[列 1]/[列 2]) | 値がエラーの場合、NA を返します |
10 | 0 | =IF(ISERROR([列 1]/[列 2]),"-",[列 1]/[列 2]) | 値がエラーの場合、ダッシュを返します |
ページの先頭へ日付と時刻の式
次の式を使用すると、日付に日数、月数、年数を加算する、2 つの日付間の差分を計算する、時刻を 10 進値に変換するなど、日付と時刻に基づく計算を行うことができます。
日付に日数を加算するには、加算演算子 (+) を使用します。
メモ
日付を操作するときは、集計列の戻り値の型を [日付と時刻] に設定する必要があります。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
2007/06/09 | 3 | =[列 1]+[列 2] | 2007/06/09 に 3 日分の日数を加算します (2007/06/12) |
2008/12/10 | 54 | =[列 1]+[列 2] | 2008/12/10 に 54 日分の日数を加算します (2009/02/02) |
日付に月数を加算するには、DATE、YEAR、MONTH、および DAY 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
2007/06/09 | 3 | =DATE(YEAR([列 1]),MONTH([列 1])+[列 2],DAY([列 1])) | 2007/06/09 に 3 か月分の月数を加算します (2007/09/09) |
2008/12/10 | 25 | =DATE(YEAR([列 1]),MONTH([列 1])+[列 2],DAY([列 1])) | 2008/12/10 に 25 か月分の月数を加算します (2011/01/10) |
日付に年数を加算するには、DATE、YEAR、MONTH、および DAY 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
2007/06/09 | 3 | =DATE(YEAR([列 1])+[列 2],MONTH([列 1]),DAY([列 1])) | 2007/06/09 に 3 年分の年数を加算します (2010/06/09) |
2008/12/10 | 25 | =DATE(YEAR([列 1])+[列 2],MONTH([列 1]),DAY([列 1])) | 2008/12/10 に 25 年分の年数を加算します (2033/12/10) |
日付に日数、月数、年数を組み合わせて加算するには、DATE、YEAR、MONTH、および DAY 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
2007/06/09 | =DATE(YEAR([列 1])+3,MONTH([列 1])+1,DAY([列 1])+5) | 2007/06/09 に 3 年、1 か月、5 日分の年数、月数、日数を加算します (2010/07/14) |
2008/12/10 | =DATE(YEAR([列 1])+1,MONTH([列 1])+7,DAY([列 1])+5) | 2008/12/10 に 1 年、7 か月、5 日分の年数、月数、日数を加算します (2010/07/15) |
この計算を行うには、DATEDIF 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
1995/01/01 | 1999/06/15 | =DATEDIF([列 1], [列 2],"d") | 2 つの日付の日数差を返します (1626) |
1995/01/01 | 1999/06/15 | =DATEDIF([列 1], [列 2],"ym") | 年の部分は無視して、2 つの日付の差を月数で返します (5) |
1995/01/01 | 1999/06/15 | =DATEDIF([列 1], [列 2],"yd") | 年の部分は無視して、2 つの日付の日数差を返します (165) |
結果を標準の時刻の形式 (時 : 分 : 秒) で表示するには、減算演算子 (-) と TEXT 関数を使用します。このメソッドが機能するためには、時間が 24 未満で、分と秒が 60 未満である必要があります。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
2007/06/09 午前 10:35 | 2007/06/09 午後 3:30 | =TEXT([列 2]-[列 1],"h") | 2 つの時刻間の時間数を求めます (4) |
2007/06/09 午前 10:35 | 2007/06/09 午後 3:30 | =TEXT([列 2]-[列 1],"h:mm") | 2 つの時刻間の時間数と分数を求めます (4:55)
|
2007/06/09 午前 10:35 | 2007/06/09 午後 3:30 | =TEXT([列 2]-[列 1],"h:mm:ss") | 2 つの時刻間の時間数、分数、秒数を求めます (4:55:00)
|
結果全体を 1 つの時間単位で表示するには、INT、HOUR、MINUTE、または SECOND 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
2007/06/09 午前 10:35 | 2007/06/10 午後 3:30 | =INT(([列 2]-[列 1])*24) | 2 つの時刻間の総時間数を求めます (28) |
2007/06/09 午前 10:35 | 2007/06/10 午後 3:30 | =INT(([列 2]-[列 1])*1440) | 2 つの時刻間の総分数を求めます (1735) |
2007/06/09 午前 10:35 | 2007/06/10 午後 3:30 | =INT(([列 2]-[列 1])*86400) | 2 つの時刻間の総秒数を求めます (104100) |
2007/06/09 午前 10:35 | 2007/06/10 午後 3:30 | =HOUR([列 2]-[列 1]) | 2 つの時刻間の時間数 (差分が 24 未満の場合) を求めます (4) |
2007/06/09 午前 10:35 | 2007/06/10 午後 3:30 | =MINUTE([列 2]-[列 1]) | 2 つの時刻間の分数 (差分が 60 未満の場合) を求めます (55) |
2007/06/09 午前 10:35 | 2007/06/10 午後 3:30 | =SECOND([列 2]-[列 1]) | 2 つの時刻間の秒数 (差分が 60 未満の場合) を求めます (0) |
時間を標準の時刻の形式から 10 進数に変換するには、INT 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
午前 10:35 | =([列 1]-INT([列 1]))*24 | 午前 12:00 以降の時間数を 10 進数で求めます (10.583333) |
午後 12:15 | =([列 1]-INT([列 1]))*24 | 午前 12:00 以降の時間数を 10 進数で求めます (12.25) |
時間を 10 進数から標準の時刻の形式 (時 : 分 : 秒) に変換するには、除算演算子と TEXT 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
23:58 | =TEXT(列 1/24, "hh:mm:ss") | 午前 12:00 以降の時間数、分数、秒数を求めます (00:59:55) |
2:06 | =TEXT(列 1/24, "h:mm") | 午前 12:00 以降の時間数および分数を求めます (0:05) |
ユリウス日は、現在の年と 1 月 1 日からの通算日数とを組み合わせた日付形式です。たとえば、2007 年 1 月 1 日は 2007001 と表され、2007 年 12 月 31 日は 2007365 と表されます。この形式はユリウス暦に基づいているわけではありません。
日付をユリウス日に変換するには、TEXT 関数と DATEVALUE 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
2007/06/23 | =TEXT([列 1],"yy")&TEXT(([列 1]-DATEVALUE(TEXT([列 1],"yy")&"/1/1")+1),"000") | 日付を 2 桁の年のユリウス日で表示します (07174) |
2007/06/23 | =TEXT([列 1],"yyyy")&TEXT(([列 1]-DATEVALUE(TEXT([列 1],"yy")&"/1/1")+1),"000") | 日付を 4 桁の年のユリウス日で表示します (2007174) |
天文学で使用されるユリウス日に変換するには、定数 2415018.50 を使用します。この式は、1900 年から計算する日付システムで、1901 年 3 月 1 日より後の日付に対してのみ使用できます。
列 1 | 式 | 説明 (結果) |
---|
2007/06/23 | =[列 1]+2415018.50 | 天文学で使用されるユリウス暦の形式で日付を表示します (2454274.50) |
曜日を表す文字列に日付を変換するには、TEXT 関数と WEEKDAY 関数を使用します。
列 1 | 式 | 説明 (予想される結果) |
---|
2007/02/19 | =TEXT(WEEKDAY([列 1]), "dddd") | 指定した日付の曜日を計算し、その曜日の完全表記を返します (Monday) |
2008/01/03 | =TEXT(WEEKDAY([列 1]), "ddd") | 指定した日付の曜日を計算し、曜日の略語を返します (Thu) |
ページの先頭へ数式
次の式を使用すると、数値を加算、減算、乗算、除算する、数値の平均値やメジアンを求める、数値を丸める、値の数を数えるなど、数学に関するさまざまな計算を行うことができます。
連続した複数の列の数値の和を求めるには、加算演算子 (+) または SUM 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (結果) |
---|
6 | 5 | 4 | =[列 1]+[列 2]+[列 3] | 列 1 から列 3 までの値を加算します (15) |
6 | 5 | 4 | =SUM([列 1],[列 2],[列 3]) | 列 1 から列 3 までの値を加算します (15) |
6 | 5 | 4 | =SUM(IF([列 1]>[列 2], [列 1]-[列 2], 10), [列 3]) | 列 1 の値が列 2 の値より大きい場合は、その差と列 3 の値を加算します。それ以外の場合は、10 と列 3 を加算します (5) |
連続した複数の列の数値の差を求めるには、減算演算子 (-)、または負の数値を指定した SUM 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (結果) |
---|
15000 | 9000 | -8000 | =[列 1]-[列 2] | 15000 から 9000 を減算します (6000) |
15000 | 9000 | -8000 | =SUM([列 1], [列 2], [列 3]) | 列 1 から列 3 までの値 (負の値を含む) を加算します (16000) |
減算演算子 (-) および除算演算子 (/) と ABS 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
2342 | 2500 | =([列 2]-[列 1])/ABS([列 1]) | 2 つの値の変化率を求めます (6.75% または 0.06746) |
連続した複数の列の数値の積を求めるには、乗算演算子 (*) または PRODUCT 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
5 | 2 | =[列 1]*[列 2] | 列 1 と列 2 の数値の積を求めます (10) |
5 | 2 | =PRODUCT([列 1], [列 2]) | 列 1 と列 2 の数値の積を求めます (10) |
5 | 2 | =PRODUCT([列 1],[列 2],2) | 列 1 と列 2 の数値と 2 の積を求めます (20) |
連続した複数の列の数値を除算するには、除算演算子 (/) を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
15000 | 12 | =[列 1]/[列 2] | 15000 を 12 で割ります (1250) |
15000 | 12 | =([列 1]+10000)/[列 2] | 15000 と 10000 の和を求め、それを 12 で割ります (2083) |
平均値は平均とも呼ばれます。連続した複数の列の数値の平均値を求めるには、AVERAGE 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (結果) |
---|
6 | 5 | 4 | =AVERAGE([列 1], [列 2],[列 3]) | 列 1 から列 3 までの数値の平均値を求めます (5) |
6 | 5 | 4 | =AVERAGE(IF([列 1]>[列 2], [列 1]-[列 2], 10), [列 3]) | 列 1 の値が列 2 の値より大きい場合は、その差と列 3 の平均値を求めます。それ以外の場合は、値 10 と列 3 の平均値を求めます (2.5) |
メジアンとは、数値を大きさの順に並べたときに中央の位置にくる数値のことです。数値のグループのメジアンを計算するには、MEDIAN 関数を使用します。
A | B | C | D | E | F | 式 | 説明 (結果) |
---|
10 | 7 | 9 | 27 | 0 | 4 | =MEDIAN(A, B, C, D, E, F) | 列 A から列 F までの数値のメジアンを求めます (8) |
連続した複数の列の最小値または最大値を求めるには、MIN 関数および MAX 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (結果) |
---|
10 | 7 | 9 | =MIN([列 1], [列 2], [列 3]) | 最小値を求めます (7) |
10 | 7 | 9 | =MAX([列 1], [列 2], [列 3]) | 最大値を求めます (10) |
数値の数を数えるには、COUNT 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (結果) |
---|
りんご | | 2007/12/12 | =COUNT([列 1], [列 2], [列 3]) | 数値が格納されている列の数を数えます。日付と時刻、文字列、および null 値は除外されます (0) |
$12 | #DIV/0! | 1.01 | =COUNT([列 1], [列 2], [列 3]) | 数値 (エラーのある値および論理値は除外) が格納されている列の数を数えます (2) |
この計算を行うには、パーセント演算子 (%) を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
23 | 3% | =[列 1]*(1+5%) | 列 1 の数値を 5% 増加させます (24.15) |
23 | 3% | =[列 1]*(1+[列 2]) | 列 1 の数値を列 2 の割合 (3%) で増加させます (23.69) |
23 | 3% | =[列 1]*(1-[列 2]) | 列 1 の数値を列 2 の割合 (3%) で減少させます (22.31) |
この計算を行うには、指数演算子 (^) または POWER 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
5 | 2 | =[列 1]^[列 2] | 5 の 2 乗を計算します (25) |
5 | 3 | =POWER([列 1], [列 2]) | 5 の 3 乗を計算します (125) |
数値を丸めるには、ROUNDUP、ODD、または EVEN 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
20.3 | =ROUNDUP([列 1],0) | 20.3 を 1 の位に切り上げます (21) |
-5.9 | =ROUNDUP([列 1],0) | -5.9 を 1 の位に切り上げます (-5) |
12.5493 | =ROUNDUP([列 1],2) | 12.5493 を小数第 2 位に切り上げます (12.55) |
20.3 | =EVEN([列 1]) | 20.3 を偶数の値に切り上げます (22) |
20.3 | =ODD([列 1]) | 20.3 を奇数の値に切り上げます (21) |
数値を切り捨てるには、ROUNDDOWN 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
20.3 | =ROUNDDOWN([列 1],0) | 20.3 の小数点以下を切り捨てます (20) |
-5.9 | =ROUNDDOWN([列 1],0) | -5.9 の小数点以下を切り捨てます (-6) |
12.5493 | =ROUNDDOWN([列 1],2) | 12.5493 を小数第 2 位までに切り捨てます (12.54) |
数値を整数または小数に四捨五入するには、ROUND 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
20.3 | =ROUND([列 1],0) | 20.3 を小数第 1 位で四捨五入します (20) |
5.9 | =ROUND([列 1],0) | 5.9 を小数第 1 位で四捨五入します (6) |
-5.9 | =ROUND([列 1],0) | -5.9 を絶対値が大きいほうの値に小数第 1 位で四捨五入します (-6) |
1.25 | =ROUND([列 1], 1) | 数値を小数第 1 位に四捨五入します。四捨五入の対象となる桁が 0.05 以上なので、数値が切り上げられます (結果: 1.3) |
30.452 | =ROUND([列 1], 2) | 数値を小数第 2 位に四捨五入します。四捨五入の対象となる桁が 0.005 未満 (0.002) なので、数値が切り捨てられます (結果: 30.45) |
数値を 0 より上の有効数字に四捨五入するには、ROUND、ROUNDUP、ROUNDDOWN、INT、および LEN 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
5492820 | =ROUND([列 1],3-LEN(INT([列 1]))) | 5492820 を上位 3 桁の 1 万の位に四捨五入します (5490000) |
22230 | =ROUNDDOWN([列 1],3-LEN(INT([列 1]))) | 22230 の上位 3 桁の 100 の位まで残し、それより下の桁を切り捨てます (22200) |
5492820 | =ROUNDUP([列 1], 5-LEN(INT([列 1]))) | 5492820 を上位 5 桁の 100 の位に切り上げます (5492900) |
ページの先頭へ文字列の式
次の式を使用すると、複数の列の値を結合または連結する、列の内容を比較する、文字またはスペースを削除する、文字を繰り返し表示するなどの文字列の操作を行うことができます。
文字列の大文字小文字を変更するには、UPPER 関数、LOWER 関数、または PROPER 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
nina Vietzen | =UPPER([列 1]) | 文字列をすべて大文字に変換します (NINA VIETZEN) |
nina Vietzen | =LOWER([列 1]) | 文字列をすべて小文字に変換します (nina vietzen) |
nina Vietzen | =PROPER([列 1]) | 文字列の単語の先頭を大文字に変換します (Nina Vietzen) |
姓と名を結合するには、アンパサンド演算子 (&) または CONCATENATE 関数を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
Carlos | Carvallo | =[列 1]&[列 2] | 2 つの文字列を結合します (CarlosCarvallo) |
Carlos | Carvallo | =[列 1]&" "&[列 2] | 2 つの文字列を結合し、間をスペースで区切ります (Carlos Carvallo) |
Carlos | Carvallo | =[列 2]&", "&[列 1] | 2 つの文字列を結合し、間をコンマとスペースで区切ります (Carvallo, Carlos) |
Carlos | Carvallo | =CONCATENATE([列 2], ",", [列 1]) | 2 つの文字列を結合し、間をコンマで区切ります (Carvallo,Carlos) |
文字列と数値を結合するには、CONCATENATE 関数、アンパサンド演算子 (&)、または TEXT 関数とアンパサンド演算子を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
Yang | 28 | =[列 1]&" sold "&[列 2]&" units." | 列の内容を 1 つの文字列に結合します (Yang sold 28 units.) |
Dubois | 40% | =[列 1]&" sold "&TEXT([列 2],"0%")&" of the total sales." | 列の内容を 1 つの文字列に結合します (Dubois sold 40% of the total sales.)
メモ
TEXT 関数は、基になる値 (.4) の代わりに、書式設定された列 2 の値を追加します。 |
Yang | 28 | =CONCATENATE([列 1]," sold ",[列 2]," units.") | 列の内容を 1 つの文字列に結合します (Yang sold 28 units.) |
文字列を日付または時刻と結合するには、TEXT 関数とアンパサンド演算子 (&) を使用します。
列 1 | 列 2 | 式 | 説明 (結果) |
---|
請求日 | 2007/06/05 | ="請求日: "&TEXT([列 2], "yyyy/MM/dd") | 文字列と日付を結合します (請求日: 2007/06/05) |
請求日 | 2007/06/05 | =[列 1]&" "&TEXT([列 2], "yyyy/MM/dd") | 別々の列に格納されている文字列と日付とを結合して、1 つの列にまとめます (請求日 2007/06/05) |
ある列を、別の列または値のリストと比較するには、EXACT 関数または OR 関数を使用します。
列 1 | 列 2 | 式 | 説明 (予想される結果) |
---|
BD122 | BD123 | =EXACT([列 1],[列 2]) | 列 1 と列 2 の内容を比較します (No)
|
BD122 | BD123 | =EXACT([列 1], "BD122") | 列 1 の内容と文字列 "BD122" を比較します (Yes)
|
列に特定の文字列が含まれているかどうかを調べるには、IF、FIND、SEARCH、および ISNUMBER 関数を使用します。
列 1 | 式 | 説明 (予想される結果) |
---|
Vietzen | =IF([列 1]="Vietzen", "OK", "Not OK") | 列 1 に格納されている文字列が Vietzen かどうかを調べます (OK) |
Vietzen | =IF(ISNUMBER(FIND("v",[列 1])), "OK", "Not OK") | 列 1 に文字 v が含まれているかどうかを調べます (OK) |
BD123 | =ISNUMBER(FIND("BD",[列 1])) | 列 1 に BD が含まれているかどうかを調べます (Yes) |
空白以外の列の個数を数えるには、COUNTA 関数を使用します。
列 1 | 列 2 | 列 3 | 式 | 説明 (結果) |
---|
売上 | 19 | | =COUNTA([列 1], [列 2]) | 空白以外の列の個数を数えます (2)
|
売上 | 19 | | =COUNTA([列 1], [列 2], [列 3]) | 空白以外の列の個数を数えます (2)
|
文字列から文字を削除するには、LEN、LEFT、および RIGHT 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
Vitamin A | =LEFT([列 1],LEN([列 1])-2) | 左端から 7 (9-2) 文字を返します (Vitamin)
|
Vitamin B1 | =RIGHT([列 1], LEN([列 1])-8) | 右端から 2 (10-8) 文字を返します (B1) |
列からスペースを削除するには、TRIM 関数を使用します。
列 1 | 式 | 説明 (結果) |
---|
Hello there! | =TRIM([列 1]) | 先頭と末尾からスペースを削除します (Hello there!)
|
列に文字を繰り返し表示するには、REPT 関数を使用します。
式 | 説明 (結果) |
---|
=REPT(".",3) | ピリオドを 3 回繰り返して表示します (...) |
=REPT("-",10) | ダッシュを 10 回繰り返して表示します (----------) |
ページの先頭へ