1.合計を求めるための関数です。
【関数】
=SUM(数値1,数値2,数値3,・・・)
【引数の意味】
数値1,数値2,数値3のように()内に指定されている全ての数値を合計します。
【使用例】
・「=SUM(1,2,3)」と指定すると、()内の数値を合計して「6」と結果が求まります。
・「=SUM(6-4,3*5)」と指定すると、()内の計算結果をそれぞれ合計して「17」と結果が求まります。
・「=SUM(A1:A6)」と指定すると、セルA1,A2,A3,A4,A5,A6の値を合計した結果が求まります。
・「=SUM(A1:A3,B1:B3)」と指定すると、セルA1からA3までの合計と、セルB1からB3までの合計値が求まります。
2.条件付の合計値を求める関数です。
【関数】
=SUMIF(判断する範囲,条件指定,合計する範囲)
【関数の意味】
条件を満たす値の合計を求めます。
【引数の意味】
判断する範囲:条件と比較する値をセルの範囲で指定します。
条件指定 :合計の対象にしたい条件を指定します
合計する範囲:実際に合計をする範囲を指定します。
【使用例】
・「=SUMIF(A1:A3,"ABC",B1:B3)」と指定した場合、A1からA3の範囲の中に"ABC"の文字列がある場合のB1からB3の合計値を求めます。
以上、合計値を求める関数について2つご紹介しました。是非参考にしてみてください。
下記にエクセルの関数の使い方をいくつかご紹介します。
1.平均値を求める関数
【関数】
「=AVERAGE(数値1,数値2,数値3,・・・)」
【関数の意味】
()内に指定された数値の平均値を求めます。この時文字列は計算対象外となります。
【使用例】
・「=AVERAGE(10,6,9,4)」と指定すると、平均値の「7.25」が返されます。
・「=AVERAGE(A1:A6)」と指定すると、A1からA6に指定された数値の平均値が返されます。
2.値の種類を求める関数
【関数】
「=TYPE(値)」
【意味】
()内に指定された値のタイプを答える関数です。
【返り値】
値が未入力のとき:「1」
値が数値のとき :「1」
値が文字のとき :「2」
値が論理値のとき:「4」
値がエラーのとき:「16」
値が配列のとき :「32」
の値のどれかが返ります。
3.除算の余りを求める関数です
【関数】
「=MOD(数値1,数値2)」
【意味】
数値1÷数値2の「余り」を回答します。ただし、数値2に「0」を指定するとエラー値「(#DIV/0!)」となります。
【使用例】
・「=MOD(10,4)」を指定すると、10÷4=2余り2の余り2が求まります。
・「=MOD(100,25)」を指定すると、100÷25=4余り0になるので「0」が求まります。
・「=MOD(A1,A2)」を指定すると、セルA1÷セルB1の余りの値が求まります。
・「=MOD("ABC",2)」を指定すると、文字列は割れないのでエラー値となります。
エクセルには文字列を操作するmidという関数があります。mid関数とは、文字列の指定した場所から指定した数の文字を取得して表示させるというものです
【書式】
「=mid(対象セル,文字列の抽出開始位置,抽出する文字数)」
【パラメータの説明】
セル :抽出する対象となる文字列が指定されているセルを指定
文字列の抽出開始位置:「セル」で指定した文字列から抽出したい文字の先頭文字の左側からの位置を指定
抽出する文字数 :抽出したい文字数を指定
【使用例】
=mid(C1,5,2)
【使用例の説明】
例えば、セルC1に「抽出対象文字」という文字が記述されているとします。その文字列の左側5文字目から2文字分を取り出します。したがって「抽出対象文字」の左側5文字目の「文」から2文字分の「文字」という文字列が抽出される事になります。
【注意点】
mid関数は、文字の数で抽出しますので、全半角の文字列が混在していたとしても文字数分の抽出になります。例えばセルC1に「AaBbCcDdEe」という文字列があったとして、「=mid(C1,5,2) 」と指定した場合、「Cc」という2文字が抽出される事になります。
全角と半角を区別したい場合は、「midb関数」というのがあります。これは文字数ではなくバイト数で抽出することになりますので、全角=2バイト、半角=1バイトという事になります。したがって、先ほどの文字列でいくと「=mid(C1,6,3)」の場合は「bC」という文字が抽出される事になります。
エクセルには文字列を検索するVLOOKUP関数というのがあります。VLOOKUP関数とは、指定した範囲の中から、指定した項目が入力されている行を探し出し、その列に入力されている値を検索するという関数です。
【書式】
「=VLOOKUP(検索対象文字列,検索対象セル,抽出列,検索方法)」
【パラメータの説明】
検索対象文字列:検索文字列を入力
検索対象セル :検索するセルを入力(範囲選択可能)
抽出列 :検索後に表示させたい列を指定
検索方法 :通常検索時→「FALSE」、二分検索時→「TRUE」
【使用例】
=VLOOKUP("検索するよ",$A$1:$D$99,4,FALSE)
【使用例の説明】
A1~D99の範囲の中に「検索するよ」という文字があるかを検索をして、左から4列目(D列)の値を表示します。
【注意点】
検索対象の範囲の一番左側が検索の対象列となるように指定をしてください。また検索対象セルには、検索後に表示させる抽出列も含んで指定するようにしてください。例えば、A列にある文字列を検索して、G列にある値を表示させる場合は、A~G列までを範囲指定するようにしてください。
表の並び順がそうなっていない場合は、検索列を一番左側に、抽出列を検索対象セルに指定するように並び替えておかなくてはなりません。また検索方法を「TRUE」の二分検索を指定する場合は、あらかじめ検索の対象とする表をソートしておいてください。
エクセルにはCUMPRINCという関数があるはずなのですが、使おうと思って「挿入」から「関数」→関数の分類で「財務」というのを選択しても、一覧表にいない場合があります。こういった場合、分析ツールのアドインをエクセルに組み込む必要があると思います。次のように実行してみると使用できない関数も使用可能になると思いますので参考にしてみてください。
1.エクセルを起動する
2.メニューバーの「ツール」から「アドイン」を選択する
3.ダイアログボックスの「分析ツール」というチェックボックスにチェックする
4.OKボタンを押す
と実行してみてください。
上記のように、「アドイン」と注記がある関数は相当数存在します。これは専門的な関数を使う場合に該当されると思います。では以下のアドイン関数を参考にしてみてください。
【対立組み込み関数】
・http://kokoro.kir.jp/excel/addin.html?
【エクセルのアドイン関数】
・http://ccfa.info/kakucyousi/xyz/x/xla.html
【アドインに変換】
・http://www.aa.alpha-net.ne.jp/pcfriend/Excel/Addin.htm
【隠し関数】
・http://www.takenet.or.jp/~hayakawa/excel0/u-tanexcel26.htm
エクセルでは、生年月日から年齢を割り出したり、勤続年数などの経過日数などを計算したりというのはよく使われる機能です。それらに関する説明をしているサイトも数多くありますが、中には誤った説明をしているサイトもあるのです。
例えば生年月日から年齢を計算する方法ですが、単純に生年月日と算出したい日付を引いて出た年数に対してユーザ定義書式によて「yy歳」と設定するだけでOKと説明しているサイトとかあるのですが、この計算式だと誕生日の翌日にならないと年齢が加算されないので、計算式の調整が必要になります。
したがって、誕生日に年齢を重ねるという方法をとりたいのならば、引き算調整じゃなく関数を使って算出した方が間違いが無くていいのではないでしょうか。次に年齢計算を行う関数をご紹介します。
A1セルに年齢算出基準日、B1セルに生年月日、C1セルに年齢を表示させる場合の関数例です。C1セルに対して「=DATEDIF(B1,A1,"Y") 」と入力すると、C1セルに年齢が表示されます。
【DATEDIF関数】
第1引数:開始日
第2引数:終了日
第3引数:算出単位
"Y" : 期間内の満年数
"M" : 期間内の満月数
"D" : 期間内の日数
"YM" : 経過した1年未満の月数
"YD" : 経過した1年未満の日数
"MD" : 経過した1月未満の日数
使用するにあたっての注意点ですが、この関数は「関数の挿入」→「関数の貼り付け」から行うダイアログボックスには表示されない関数ですので、気をつけてください。
エクセルの関数を使って日付に適応した曜日を表示させて見ましょう。使用する関数ですが、例えばA5セルに入力されている日付に適応した曜日を表示したい場合は、「=WEEKDAY(A5)」と入力するだけで曜日が表示でき、非常に簡単です。
しかしこれだけだと、A5セルに日付が入力されていない場合、空白エラーとなってしまうので、エラー値を表示させないために「=IF(A5="","",WEEKDAY(A5))」というように、IF関数を使用して曜日を求めます。意味としてはA5セルに何も入力されていない場合は何も設定しない、そうでない場合は曜日を設定するというような関数を使った方がいいと思います。
またこの関数を使用するにあたっての注意点ですが、関数を入力するだけだと曜日に対する数値だけが表示されてしまいますので、関数を入力するセルの書式を曜日に設定しなければなりません。変更方法ですが、曜日を求めたいセルで右クリックをして、表示されたメニューから「セルの書式設定」、「表示形式」、「ユーザー定義」を選びます。
「種類」→「G/標準」のところを削除して「aaaa」と入力して、OKボタン押下することで設定完了です。また、前述のIF関数を使うようなエラー処理ですが、万が一の場合を兼ねて、日付の関数に限らず何の場合でもエラー処理は入れておいた方がいいと思います。これで曜日がきちんと表示されるはずですので参考にしてみてください。
1.指定された年月日から「年」を取り出します。
【関数】
「=YEAR(シリアル値)」「=YEAR(指定年月日)」
【意味】
()内に指定された値から「年」だけを取り出します。
【使用例】
現在の日付が2007年12月31日の場合、セルA1に2006年3月10日と指定した時
・「=YEAR(NOW())」と指定した場合、現在日付の「2007」が抽出されます。
・「=YEAR(TODAY())」と指定した場合、今日の日付の「2007」が抽出されます。
・「=YEAR(A1)」と指定した場合、セルA1に指定された日付の年「2006」が抽出されます。
・「=YEAR("1970/04/01")」と指定した場合、「1970」が抽出されます。
・「=YEAR(365)」と指定した場合、シリアル値である1900年12月31日の「1900」が抽出されます。
2.指定された値の何番目かの値を抽出するための関数です。
【関数】
「=CHOOSE(取出し番号,値1,値2,・・・,値29)」
【引数の意味】
取出し番号:1~29(最大29)を指定します。値1~29:最低2個の値を指定します。
【使用例】
・「=CHOOSE(4,"A","B","C","D")」と指定します。結果は、4番目に指定されている「D」が取り出されます。
・「=CHOOSE(5,"A","B","C","D")」と指定します。結果は5番目の値に該当は無いので「#VALUE」というエラー値が戻ります。
エクセルの関数の中に、指定条件に一致するセルの個数を数えると言う「COUNTIF」という関数があります。「=countif(引数1,引数2)」という使い方をします。
【関数の説明】
引数1には指定範囲の中から、引数2で指定条件のセルがいくつあるか合計個数を求める関数です。
【引数の説明】
引数1:セルの範囲指定をします。
引数2:カウント条件を指定します。
単純に、この「COUNTIF関数」を使用する場合、指定する条件は1つだけですが、複数条件指定する場合にはどのように設定したらいいのか、と疑問に思う方もいらっしゃるでしょう。解決方法としては様々ありますが、最も簡単な方法としては、一致させる条件がセルとの完全一致ならばワーク的な作業列を作成して、そこを利用してCOUNTIF関数を実行することだと思います。
具体的に説明しますと、第一条件が入力されているセルと、第二条件が入力されているセルを「=セル1&セル2」で文字列結合します。その結合したセルに対して「COUNTIF関数」を使えばいいという訳です。
(例)
列 A B C
条件1 条件2 結合
上記例の場合、列Cに「=条件1&条件2」と結合させる関数を入力します。すると列Cには結合された文字列が表示されるようになり、この列Cに対して「COUNTIF」を使用するようにします。
関数を使い慣れていない方だと、あるデータだけでなんとかしようと思い込んでしまいますが、この例のようにデータとデータを結合させて判断をするという事もできるのです。
検索値がどの位置にあるかを求める関数をご紹介します。
【関数】
=MATCH(検索する値,検索する範囲,検索する方法)
【意味】
検索する範囲の中から検索値を探し出して、何番目の位置にあるのかを求める関数になります。検索方法によっては「#N/Aエラー」値が戻ることがありますが、これは検索値が範囲内にない時に出る場合があります。
【引数の意味】
検索する値:検索値を直接指定、または検索値が入力されているセルを指定します。検索値には文字列、数値などが指定できます。検索範囲:検索値が入力されている場所を、セル範囲で指定します。
検索する方法:0→検索値と完全に一致する値を求めます。
1→検索値に近い値の位置を求めます。(省略時は「1」指定になります)
-1→昇順に並んでいる値に対して検索できた位置を求めます。
以下に使用例を挙げますので、参考にしてください。
【例】
行 A列
1 1
2 3
3 16
4 20
5 22
6 30
7 35
8 40
「=MATCH(16,A1:A8,0)」と指定すると、セルA1~A8の中に「16」という数字は3番目にあるので、表示される数字は「3」と戻ります。次に「=MATCH(25,A1:A8,0)」と指定した時、セルA1~A8の中に「25」という数字はないので「#N/A」というエラー値が戻ります。他にも使用方法はありますが、上記のように指定すると検索できますので、参考にしてみてください。
1.文字や数値、セル、計算結果などを一つの文字列として結合させる関数です。最大30個までの項目を結合できます。
【関数】
「=CONCATENATE(値1,値2,・・・,値30) 」
【使用例】
・「=CONCATENATE(1,2,3,4)」と指定します。()内に指定されている値が結合されますので、結果は「1234」と表示されます。
・「=CONCATENATE(100,"個")」と指定します。()内に指定されている数値と文字列が結合されますので、結果は「100個」と表示されます。
この「CONCATENATE」という関数と同じ働きをするものに「&」というものがあります。「1&2&3&4」と結合したい値を&マークでつなげることで「1234」と結果が返って来ます。こちらの方が簡単で便利だと思います。
2.文字列を指定した回数繰り返し表示する関数です
【関数】
「=REPT(文字列,繰返しの回数)」
【引数の意味】
文字列 :繰り返したい文字列を入力します。
繰返しの回数:指定した文字列を繰返し表示したい回数を指定します。但し、文字列の結果が32767文字以上になるとエラー値となります。
【使用例】
・「=REPT("もし",2)」と入力すると"もし"を2回繰り返しますので、「もしもし」と表示されます。
・A1セルに10と入力されているとします。「=REPT("a",A1/2)」と指定すると、"a"という文字がA1/2の計算結果、つまり10÷2=「5」回繰り返しますので「aaaaa」という値が表示されます。
【関数】
「=SUBSTITUTE(元の文字列,検索文字,置換文字,対象)」
【意味】
元の文字列の一部あるいは複数文字を指定した文字に置き換える関数です。検索文字に合致した文字を置き換える事ができます。
【引数の意味】
元の文字列:置換元の文字が含まれている文字を指定します
検索文字 :「元の文字列」の中の置き換えたい文字を指定します。
置換文字 :置き換えたい文字を指定します。
対象 :置き換え対象文字が複数存在するとき、何番目の文字を置き換えるのかを指定します。省略した場合には全ての文字が置換対象になります。
【使用例】
・「=SUBSTITUTE("文字2003","エクセル","数字")」と指定した場合、「文字2003」という文字列の「文字」という文字を「数字」という文字に置換します。結果は「数字2003」という文字が求まります。
・「=SUBSTITUTE("文字2003","2003","数字")」と指定した場合、「文字2003」という文字列の「2003」という文字を「数字」という文字に置換します。結果は「文字数字」という文字が求まります。
・「=SUBSTITUTE("文字2003","字","数字")」と指定した場合、「文字2003」という文字列の「字」という文字を「数字」という文字に置換します。結果は「文数字」という文字が求まります。
使用方法が分かりましたでしょうか?データを使う上で頻度が多い関数だと思いますので、是非参考にしてみてください。
次のようなことをエクセルで行いたい場合の方法をご紹介します。
【問題】
A列に入力されている複数の数字から、最小値を求めB列に表示させたい。
(例)A1セル「100*30*5*10」
B1セル「5」
【検索方法1】
1.対象セル(この場合A1セル)を選択します。
2.メニュー → データ → 区切り位置 → カンマやタブ を選択し「次へ」をクリックします。
3.区切り文字の所の指定を「その他」→「*」と入力すると数字が4つに分かれます。
4.区切られた数字の範囲をセル指定し、「=MIN(セル範囲)」と入力すると最小値が抽出されます。
【検索方法2】
マクロで関数を作成し、それを指定する方法です。
1.ユーザー定義関数を使用します。
2.メニューより「挿入」→「標準モジュール」を選択します。
3.VBE画面が開いたら以下のコードを入力します。
Function mojimin(Target As Range) As Variant
Dim A As Variant, B As Variant
Dim i As Double
A = Split(Target.Value, "*")
ReDim B(0 To UBound(A))
For i = LBound(A) To UBound(A)
B(i) = CDbl(A(i))
Next
mojimin = WorksheetFunction.Min(B)
End Function
4.最小値を表示させたいセルに「=mojimin(A1)」と入力します。
上記二つのどちらを使っても最小値が表示されると思いますので、参考にしてみてください。
