Excel。減価償却費を定額表で算出するのがSLN関数です。
<関数辞典:SLN関数>
SLN関数
読み方: エスエルエヌ
読み方: ストレートライン
分類: 財務
SLN(取得価額,残存価額,耐用年数)
減価償却費を定額表で算出します
Straight LiNe depreciationの略
【Excel・Word・PowerPoint・Access】あなたの「困った」を解決!10年以上の経験が詰まった、現場の疑問から生まれた実践テクニック集。作業効率を劇的に上げるOffice活用術をお届けします。
SLN関数
読み方: エスエルエヌ
読み方: ストレートライン
分類: 財務
SLN(取得価額,残存価額,耐用年数)
減価償却費を定額表で算出します
Straight LiNe depreciationの略
2項1組横棒帯グラフというのは、次のようなグラフです。
今回は、積み上げ横棒グラフをつかっています。
さて、別に問題なくつくれるように思えますが、簡単ではないんですね。
それは、組ごとに空白というか、隙間が空いています。
これが、難しいわけです。
例えば、次の表から、積み上げ横棒グラフを作ってみます。
それぞれの積み上げ横棒グラフの隙間は同じ間隔で空いています。これを店舗ごとに寄せたいのですが、それを行うことはできません。
詰めることはできますが、全体一括で動いてしまいます。特定の横棒グラフを選択しても、その棒グラフだけという仕組みになっていません。
そこで、表を次のように編集して、グラフをつくります。
2行目や5行目など空白行をいれることで、グラフどうしの隙間を演出しています。
そして、一番のポイントがあります。B13に全角空白を入力しておきます。データが空だと、グラフが綺麗につくれません。
A1:D13を範囲選択して、積み上げ横棒グラフをつくります。
グラフを修正していきましょう。
縦軸が、表と異なっていて、品川が一番上に、新宿が一番下に、そして、年も2027年が上にある状態です。
反転させるので、縦軸をクリックします。
書式タブのグラフ要素が、「縦 (項目) 軸」になっていることを確認して、選択対象の書式設定をクリックします。
これで、グラフは反転できました。ついでに、棒グラフをクリックします。
作業ウィンドウは、データ系列の書式設定作業ウィンドウに変わりました
Excelで一次方程式などのグラフを描くとき、普通に「折れ線グラフ」を選んで、0から始まらなかったり、目盛りがズレたりして困ったことはありませんか?
実は、X軸もY軸も数値で管理したい場合、折れ線グラフはおすすめできません。
理由は、折れ線グラフだとX軸を「1番目のデータ、2番目…」と「項目」として扱ってしまうからです。
今回は、原点(0,0)から正しく直線を引くための「散布図」の活用法と、方眼紙のように見やすく軸を整えるテクニックを解説します!
SKEW.P関数
読み方: スキュー・ピー
分類: 統計
SKEW.P(数値1,[数値2],…)
データセットの歪度(わいど)を算出します
日付から曜日を表示したい場合、Excelだと、TEXT関数を使う方法があります。
次の表で確認してみましょう。
B2には、
=TEXT(A2,"aaaa")
というTEXT関数をつかった数式を設定しております。
TEXT関数は表示形式の関数です。
”aaaa”というのは、日付を”○曜日”と曜日を表示することができます。
では、Accessは、どのようにしたらいいのでしょうか。
Accessには、TEXT関数はありません。
テーブルの日付を表示するために、クエリをつくります。
曜日: WeekdayName(Weekday([日付]))
実行して確認してみましょう。
クエリの演算フィールドを確認します。
曜日: WeekdayName(Weekday([日付]))
WeekdayName関数は、
WeekdayName(曜日番号, モード, 週の開始曜日)
という引数を持っていて、曜日番号に基づいた曜日名を表示します。
曜日番号は、Weekday関数で求めますので、基本的には、WeekdayName関数とWeekday関数はペアで使うことになります。
そのWeekday関数は、
Weekday(日時, 週の開始曜日)
という引数をもっています。
2つ目の引数の「週の開始曜日」を省略すると、日~土で割り振られます。
このような方法をつかうことで、Accessの場合、日付から曜日を表示することができます。
Facebookページに書いた、Excelの豆知識(Trivia)です。
3月22日
Excel。jis関数は文字列を全角に統一関数です。
3月23日
Excel。asc関数は文字列を半角に統一関数です。
3月24日
Excel。upper関数は含まれる英字を大文字に関数です。
3月25日
Excel。lower関数は含まれる英字を小文字に関数です。
3月26日
Excel。proper関数は含まれる英字の先頭文字を大文字に関数です。
3月27日
Excel。find関数は文字列内の特定文字列の位置を算出関数です。
ちなみに全半角の区別なしで1文字で検索します。
3月28日
Excel。findb関数は文字列内の特定文字列の位置を算出関数です。
ちなみに全角は2文字。半角は1文字で検索します
SKEW関数
読み方: スキュー
分類: 統計
SKEW(数値1,[数値2],…)
データセットの歪度(わいど)を算出します
重複なしのランダム数値を、RAND関数とRANK.EQ関数を組み合わせた方法を、以前紹介しました。
今回は、もっと簡単に、数式1つだけで、重複梨のランダム数値を求めてみましょう。
使う関数は、SORTBY関数とSEQUENCE関数とRANDARRAY関数だけで求めることができます。
=SORTBY(SEQUENCE(9), RANDARRAY(9))
確定するだけで、1~9までの数値が重複することなく、ランダムで求めることができました。
では、数式を確認します。
先に、引数から確認しておきましょう。
SEQUENCE(9)は、1から9までを連番で求めることができます。
なので100までの数値をランダムにしたい場合には、SEQUENCE(100)とします。
RANDARRAY(9)は、ランダムの値(小数)を9個求めることができます。
=SEQUENCE(9)
で、連番が、
D1には、
=RANDARRAY(9)
で、ランダムの数値を求めています。
この2つをつかって、SORTBY関数で並べ替えをします。
SORTBY関数ではなくて、SORT関数だとエラーが表示されてしまうので、注意が必要です。
SORT関数の最初の引数は、列番号しか受け取れないのでエラーがでます。
SORT関数は、数字(1列目)で、SORTBY関数は、範囲(A1:A10)を設定します。
そのため、SORTBY関数をつかいます。
SORTBY関数の最初の引数は、「範囲」。ここにSEQUENCE関数で1から9の値を作ります。
2つ目の引数は、「基準配列1」。
並べ替えの基準になる範囲です。
RANDARRAY関数で求めた数値を昇順で並べ替えています。
これで、ランダムの数値を重複することなく作ることができるというわけです。
作業効率もUPする、知っていると便利なショートカットキー。
Ctrl+Shift+5
セルの値を % 表示にする
Ctrl+Shift+6
セルに外枠罫線を設定
Ctrl+Shift+7
1つ上のセルの数式をコピーする。数式の参照先は変更しない。
Ctrl+Shift+9
行選択した範囲内にある非表示の行を再表示する
どのぐらい減ったのかを強調するグラフをつくりたいのですが、どのようにしたらいいのでしょうか。
ポイントは、減ったことがわかるようにした下向きのブロック矢印を挿入している点です。
ブロック矢印を一つずつ描くのは面倒ですし、値が変わった時に連動してくれません。
では、次の表を用意します。
C列の減算数は、ブロック矢印の大きさを担当します。
B列とC列を合算すると、B2の数値と同じようになる数値を入力しています。
そして、下向きのブロック矢印を用意します。
A1:C7を範囲選択して、積み上げ縦棒グラフをつくります。
挿入タブのグラフにある「積み上げ縦棒」を選択します。
グラフのサイズを大きくして、グラフタイトルを入力しております。
まず、用意してある、ブロック矢印をコピーします。
そのあと、減算数の縦棒をクリックします。
その後、貼り付けます。
Facebookページに書いた、Excelの豆知識(Trivia)です。
3月15日
Excel。leftb関数は文字列の左端から抽出関数です。ちなみに半角=1バイトでバイト単位です。
3月16日
Excel。rightb関数は文字列の右端から抽出関数です。ちなみに半角=1バイトでバイト単位です。
3月17日
Excel。mid関数は文字列の途中から文字を抽出関数です。
3月18日
Excel。midb関数は文字列の途中から文字を抽出関数です。ちなみに半角=1バイトでバイト単位です。
3月19日
Excel。len関数は文字数を算出関数です。
3月20日
Excel。lenb関数は文字数を算出関数です。ちなみに半角=1バイトでバイト単位です。
3月21日
Excel。trim関数は余分なスペースを削除関数です。
住所から横浜市が含まれているデータを行全体で抽出したい。
住所には、都道府県から入力されているので、横浜市を含むという「*横浜市*」のようなワイルドカードをつかう方法があります。
また、オートフィルターで、横浜市を含むという条件で抽出する方法もあります。
今回は、FILTER関数をつかって、処理してみましょう。
=FILTER(A2:D11,IFERROR(FIND(D13,D2:D11)>0,0),"")
と、A15に設定するだけで、横浜市を含むデータを抽出することができます。
FILTER関数は、スピル機能対応の関数なので、オートフィルで数式をコピーする必要はありません。
今回は、D13に条件を入力することで、その条件に合致するデータを抽出するようにしましたが、D13に用意しない場合には、
=FILTER(A2:D11,IFERROR(FIND("横浜市",D2:D11)>0,0),"")
というように数式を設定してもOKです。
では、数式を確認してみましょう。
FILTER関数よりも、先に、FILTER関数内の引数にある数式を確認しましょう。
FIND関数をつかっています。
左から何文字目に登場するかという数値を返してくれます。
神奈川県横浜市 ですから、5文字目に横浜市がありますので、5を返してくれるというわけです。
ただ、FIND関数の欠点は、該当のデータがなかった場合、#VALUE!というエラーが発生してしまうことです。
エラーがあると、最終的にFILTER関数をつかってデータを抽出したくても、#VALUE!というエラーが表示されてしまうので、FIND関数の時点でエラーを処理する必要があります。
そのため、IFERROR関数をつかって、エラーを表示しないようにします。
その場合、空白とせず、0にします。
よって、FILTER内の引数は、「IFERROR(FIND("横浜市",D2:D11),0)」となるわけです。
では、FILTER関数を確認します。
最初の引数は、「配列」。
範囲なので、A2:D11と設定します。
スピル機能がありますから、絶対参照にする必要はありません。
2つ目の引数は、「含む」。
条件です。
ここで、先ほど確認した、「IFERROR(FIND(D13,D2:D11)>0)」を設定します。
「>0」としたのは、0よりおおきければ、該当の文字が含まれていることを意味しています。
このためIFERROR関数で空白ではなく、0にしたわけです。
3つ目の引数は、「空の場合」。該当データがなかった場合は、「””」空白にします。
FILTER+IFERROR+FIND関数を組み合わせることで、関数だけで、該当する含むデータを抽出して、手早く別表にすることができます。
SIGN関数
読み方: サイン
分類: 数学/三角
SIGN(数値)
[正]=1[零]=0[負]=-1を算出します
在職期間や年齢を計算する時、「10年0ヶ月」ではなく「10年」とだけスッキリ表示したいと思ったことはありませんか?
今回使う「DATEDIF(デートディフ)関数」は、実はエクセルの関数一覧には出てこない「隠れ関数」なんです。
この動画では、基本の期間計算から、さらに一歩進んで「TEXT関数」を組み合わせ、0年や0ヶ月を自動的に非表示にする高度なテクニックまでを分かりやすく解説します。
四半期合計を表現するのに今回は3-D積み上げ縦棒グラフをつくることにしました。
まずは、データです。
挿入タブのグラフから「3-D積み上げ縦棒」を挿入します。
では、グラフの右側にあるグラフ要素にある「データラベル」をオンにすると、データラベルが表示されます。
ただし、合計値は表示されることはありません。
通常の積み上げ縦棒グラフと同じで、合計値は表示できません。
では、合計値はどのようにしたらいいのでしょうか。
テキストボックスをつかってもいいのですが、項目数が多くなると、面倒です。
そこで、次のようにつくることで対応することができます。
合計も含めて範囲選択します。
A1:E4を範囲選択したら、先ほどと同じように3-D積み上げ縦棒グラフをつくります。
横軸が店舗名になるように行/列の切り替えをおこないます。
グラフはこのようになっています。
縦棒グラフの合計(系列)をクリックします。
合計のデータラベルを表示します。
縦軸をクリックします。
書式タブの選択対象の書式設定をクリックします。
軸の書式設定作業ウィンドウが表示されます。
Facebookページに書いた、Excelの豆知識(Trivia)です。
3月8日
Excel。weeknum関数はその年の何週目にあたるか算出関数です。
3月9日
Excel。workday関数は土日・休日・祝日を除いた○日後の日付を算出関数です。
3月10日
Excel。networkdays関数は土日・休日・祝日を除いた日数を算出関数です。
3月11日
Excel。datedif関数は満年齢などの指定した期間を算出関数です。
3月12日
Excel。phonetic関数はふりがな抽出関数です。
3月13日
3月14日
Excel。right関数は文字列の右端から抽出関数です。
切り捨てを行う場合、ExcelだとROUNDDOWN関数があります。
しかしAccessには、切り捨てる関数は用意されていません。
Accessには四捨五入のRound関数はありますが、切り上げ・切り捨ては、用意されていませんので、アイディアが必要になります。
AccessではInt関数をつかって切り捨てを行うことができます。
小数第2位: Int([数値]*(10^2))/(10^2)
小数第1位: Int([数値]*(10^1))/(10^1)
整数: Int([数値])
一の位: Int([数値]*(10^-1))/(10^-1)
AccessのInt関数は、常に小さい方の整数に丸める特性がありますので、切り捨てる場合は、単純にInt関数をつかえばいいというわけです。
では、クエリで演算フィールドをつくって確認してみましょう。
ただし、注意点があります。負の場合は、Int関数では対応することができませんので、あくまでも正の場合での紹介です。
負の場合での切り捨てのやり方は、別になりますので、ご注意ください。
「担当者ごとに、売上金額が高い順に並べたい」
Accessのクエリでそう設定したのに、なぜか思うように並んでくれない……そんな経験はありませんか?
実はAccessのクエリには、「左側にあるフィールドが優先される」という絶対的なルールがあるんです。
今回は、そのルールを突破して、表の見た目(列の順番)はそのままに、思い通りの複数条件で並べ替えるテクニックを解説します!
解決の鍵は、並べ替えのためだけに作る「ダミー列」と「非表示設定」です。
売上表があります。
C列に地域が入力されていて、D列には販売金額入力されています。
やりたいことは、G2に
関西または九州の販売金額の平均値を求めたい。
関西と九州という複数条件の平均値だから、AVERAGEIFS関数をつかえば解決するはずなのですが、G2には、#DIV/0!というエラーが表示されています。
G2に設定した数式は、
=AVERAGEIFS(D2:D9,C2:C9,"関西",C2:C9,"九州")
ところが、#DIV/0!という0で除算していますよというエラーが表示されています。
0で除算?というよりも、今回のような、AまたはBという「OR条件」には、AVERAGEIFS関数は対応していないので、エラーが表示されています。
合計ならば、Aの合計を求めて、Bの合計を求めて、結果どうしをさらに合計すれば、求めることはできますが、平均はそういうわけにはいきません。
そこで、使うのが、DAVERAGE関数です。
Dがつくデータベース系関数は、ちょっとクセがある関数なので、注意が必要です。
まず、条件の表を作る必要があります。
条件をF5:F7につくりました。
元の表の見出しと同じものにする必要があります。
今回は、OR条件なので、上下に条件を入力します。左右にするとAND条件になってしまうので、注意してください。
条件をつくったら、数式を設定します。
G2に設定した数式は、
=DAVERAGE(A1:D9,D1,F5:F7)
これで、関西と九州の平均値を求めることができました。
それでは、DAVERAGE関数の引数を確認しておきましょう。
最初の引数は、「データベース」。
表のことなので、A1:D9を設定します。
見出し行は含める必要があります。
2つ目の引数は、「フィールド」。
平均値を求めたい列のことです。
販売金額の平均値を求めたいので、販売金額の列名である、D1を設定します。
3つ目の引数は、「条件」。
クライテリアって昔は表示されていました。
条件は先ほどつくったF5:F7です。
見出しも含める必要がありますので、注意してください。
データベース系関数は、基本、条件をつくることと、見出しを含めてつくることがポイントです。
そこさえ注意すれば、使いやすい関数ですので、OR条件での平均値を求めたい場合には、DAVERAGE関数がオススメです。