11/30/2019

Excel。会員の誕生月ごとの人数を算出したい。【Birthday Month】

Excel。会員の誕生月ごとの人数を算出したい。

<SUMPRODUCT関数&MONTH関数とCOUNTIF関数>

会員が誕生月を迎えたらDMやメールを送りたいけど、その人数を事前に把握しておきたいなど、日付から月ごとの件数を把握するにはどうしたらいいのでしょうか?

次のような顧客名簿があります。

B列には日付が入力されていて、1月だったら何名という結果をF列に算出したいわけです。
最初に、E列の誕生月を説明しておきます。

1月と表示されていますが、表示形式のユーザー定義をつかって、「月」を表示させているだけです。

セルの値は、1から12の数値が入力されています。

今回は、単純にG/標準のうしろに、"月"を追記しています。

最初に紹介する方法は、手間はかかりますが、わかりやすいかと思う方法です。

【MONTH関数とCOUNTIF関数】

日付の状態では何月なのかがわかりませんので、C列に月だけを算出していきます。

日付を抽出するのは、MONTH関数を使えばOKですね。

C2をクリックして、数式を入力していきます。

=MONTH(B2)
あとは、オートフィルを使って数式をコピーします。

これで、月を抽出することができましたので、F列に月ごとに何件あるのか、COUNTIF関数を使って算出していきます。

F2をクリックして、COUNTIF関数ダイアログボックスを表示します。

範囲には、$C$2:$C$16と設定します。オートフィルを使って数式をコピーしますので、絶対参照を設定しておきます。

検索条件には、E2を設定します。
仮にE2に「1月」と入力していると、合致しないので件数を算出することができません。

そのために、先程、表示形式のユーザー定義を使って「~月」と設定したわけです。


このように、月ごとの件数を算出することができました。
しかしこの方法は、一度月を算出させる必要があるので、わかりやすい反面、少々面倒です。

【SUMPRODUCT関数&MONTH関数】

一発で算出する方法もあることはあるのですが、ちょっとヤヤコシイ。
G2に次の数式を作成します。

=SUMPRODUCT((MONTH($B$2:$B$16)=E2)*1)

オートフィルを使って数式をコピーしてみると、同じ結果になります。

数式を説明してきます。

SUMPRODUCT関数は、範囲の積を合計した結果を算出する関数なのですが、この説明は後回しとして、引数で使用している、MONTH関数から説明していきます。

I2に引数のところだけで数式をつくって確認してみましょう。

B2:B16のそれぞれのデータが、E3すなわち、2月と合致しているのかを算出しているのがI列です。

合致しているなら、「TRUE」。合致していないなら「FALSE」と算出されるわけです。

ここまでが、MONTH($B$2:$B$16)の処理。

なぜ、MONTH($B$2:$B$16)に「×1」しているのかというと、TRUEやFALSEのままでは合算することができないので、「×1」をすると、TRUEは、1。FALSEは、0と算出されます。

それが、J列。
あとは、SUMPRODUCT関数をつかうことで、この範囲を合算してくれるという仕組みです。

ということで、
=SUMPRODUCT((MONTH($B$2:$B$16)=E2)*1)
という数式でも、算出することができます。

11/29/2019

Excel。グラフの復習。絵グラフ~横軸の修正【Graph】

Excel。グラフの復習。絵グラフ~横軸の修正

<グラフ>

Excelのグラフは、用途に合わせて様々なグラフを作ることができます。
今回は、グラフの復習ということ、4つをピックアップ

・Excel2013。絵グラフをExcel2013でつくってみよう。
・Excel2013。横棒グラフの並び順を表の順番にしたい。
・Excel。マイナスデータの棒グラフを作ると綺麗にできないのでアレンジしてみる
・Excel。なんじゃこりゃ!縦棒グラフを作ってみたら横軸が1・2・3ってなっている!

Excel2013。絵グラフをExcel2013でつくってみよう。
絵グラフ

プレゼンテーション用の資料をはじめとして、通常のグラフよりもわかりやく、見栄えもいい、絵グラフを作ってみようと思います。

<続きはこちら>
Excel2013。絵グラフをExcel2013でつくってみよう。
https://infoyandssblog.blogspot.com/2015/04/excel2013picturegraphexcel2013.html

Excel2013。横棒グラフの並び順を表の順番にしたい。

横棒グラフを作っているんだけど、出来た横棒グラフの並び順が表と逆転していてどうにか、表と同じように並べることはできないのでしょうか?

<続きはこちら>
Excel2013。横棒グラフの並び順を表の順番にしたい。

https://infoyandssblog.blogspot.com/2015/05/excel2013horizontalbargraph.html


Excel。マイナスデータの棒グラフを作ると綺麗にできないのでアレンジしてみる

縦棒グラフを作るときに、そのデータにマイナスの数値が入っていると、棒グラフを作った時に、綺麗に出来ないというか、見にくい状態で挿入されてしまうので、それをどうしたらいいのか?ということを今回は紹介していきます。

<続きはこちら>
Excel。マイナスデータの棒グラフを作ると綺麗にできないのでアレンジしてみる
https://infoyandssblog.blogspot.com/2015/05/excelgraph.html

Excel。なんじゃこりゃ!縦棒グラフを作ってみたら横軸が1・2・3ってなっている!

ちゃんと範囲選択はしたんだけど、グラフの横軸が1・2・3…ってなってしまう。

<続きはこちら>
Excel。なんじゃこりゃ!縦棒グラフを作ってみたら横軸が1・2・3ってなっている!
https://infoyandssblog.blogspot.com/2015/06/excelverticalbargraph-123.html

11/27/2019

Access。なんで日付を8桁の数字で入力したの?どうやったら日付に変換できますか?【Convert to date】

Access。なんで日付を8桁の数字で入力したの?どうやったら日付に変換できますか?

<Access>

入社日を管理しているテーブルがあります。

入社日フィールドが、8桁の数字として入力されてしまっています。

Accessでは「型」というのが非常に大切なわけですが、今回はテキスト型のフィールド。しかも単なる8文字で入力されているという状態のテーブル。

これでは、何年勤務なのかも算出することすらできませんし、20151310というように、13月など無いのに、入力ミスをしている危険すらあります。

そこで、今回は、8桁の数字を日付に変更させていきます。

よく考えてしまうのは、左から4文字が年だから…と発想するのは、いいのですが、例えば、Left関数を使って、

Left([入社日],4)

というように演算フィールドをつくってみても、単に左から「4文字」を抽出しただけになってしまいます。

Year関数をつかったところで、抽出された数字をシリアル値変換しただけなので、やりたいこととは程遠くなってしまいます。

そこで、Accessでは、DataSerial関数とMid関数を使うことで変換することができます。

それでは、クエリデザインをつかって、クエリを作成していきます。
次のようなDateSerial関数を使った演算フィールドを作ります。

入社日日付: DateSerial(Mid([入社日],1,4),Mid([入社日],5,2),Mid([入社日],7,2))
とりあえず、実行して確認してみましょう。

このように、8桁の数字だったテキスト型のデータが、日付型で表示することができました。

しかも、年月日の境目に「/(スラッシュ)」も入力されています。

DateSerial関数は、年月日から日付を作成する関数で、
DateSerial(年,月,日)
という構文です。

Excelでいうと、DATE関数に似ています。

ただ、今回のように文字を抽出して日付にしようと、Excelで同じことをするには、CONCATENATE関数の引数でLEFT関数・MID関数・RIGHT関数を使い、さらに年月日の境目に「/(スラッシュ)」も入力して設定する必要があります。

だた、Excelの場合、数字文字列になってしまいます。

AccessのDateSerial関数の引数は数値で入力や設定をしなくても、「数字の文字列」を自動的に「数値」に変換してくれるので、Mid関数で単純に抽出しても、問題はありません。

Mid関数ですが、ExcelのMID関数とおなじで、
Mid([入社日],1,4)
というのは、入社日フィールドの左1文字目から4文字目までを抽出という意味ですね。

ExcelとAccessで微妙に関数が異なっていたり、使い方が違ったりする点があります。

ということで、Accessの場合は、DateSerial関数とMid関数を組み合わせて使うことで、単なる8桁の数字を日付に変換することができます。

11/26/2019

今週のFacebookページの投稿 2019/11/18-2019/11/24

今週のFacebookページの投稿 2019/11/18-2019/11/24

<Facebookページ>

Facebookページで【書いてみた】ワンポイントです。


11月18日
Excel。upper関数は含まれる英字を大文字に関数です。

11月19日
Excel。lower関数は含まれる英字を小文字に関数です。

11月20日
Excel。proper関数は含まれる英字の先頭文字を大文字に関数です。

11月21日
Excel。find関数は文字列内の特定文字列の位置を算出関数です。
ちなみに全半角の区別なしで1文字で検索します。

11月22日
Excel。findb関数は文字列内の特定文字列の位置を算出関数です。
ちなみに全角は2文字。半角は1文字で検索します

11月23日
Excel。concatenate関数は文字列と文字列を結合する関数です。
ちなみに&と同じです。

11月24日
Excel。substitute関数は文字列内の特定文字を置換する関数です。
ちなみに㈱⇒株式会社などできちゃいます。

Excelテクニック and  MS-Office recommended by PC training
https://www.facebook.com/exceltechniqueandmsoffice/

11/24/2019

Excel。ピボットグラフなら、ヒストグラムにするための表は不要です。【histogram】

Excel。ピボットグラフなら、ヒストグラムにするための表は不要です。

<ピボットグラフ&ヒストグラム>

アンケート結果など年代別に集計したデータを元にして、ヒストグラムを作成します。

通常ならば、集計結果を算出しますが、ヒストグラムだけを作るならば結構面倒ですし、アレンジをしたい場合は、ヒストグラム元の表をアレンジしなければなりません。
しかし、ピボットグラフならば、集計しなくてもヒストグラムをつくることができます。

【ピボットグラフをつくる】
A1をクリックして、挿入タブの「ピボットグラフ」をクリックします。

ピボットグラフの作成ダイアログボックスが表示されます。

そのままOKボタンをクリックします。
ピボットグラフのシートが挿入されます。

ピボットグラフのフィールド作業ウインドウが表示されますので、年齢フィールドを軸(分類項目)ボックスに設定します。購入数フィールドを値ボックスに設定します。
ピボットグラフはこのように表示されます。

値ボックスは購入数の合計で設定されていますので、個数に変更します。
値ボックスの「合計/購入数」の上でクリックしてショートカットメニューを表示します。

値フィールドの設定をクリックして、「値フィールドの設定」ダイアログボックスを表示します。

選択したフィールドのデータを「合計」から「個数」に変更してOKボタンをクリックします。
ピボットグラフはこのようになっています。

横軸が年齢になっていますが、10個単位でグループ化します。
左側にピボットテーブルも作成されていますので、どの年齢のデータでもいいので、年齢の上で右クリックして、ショートカットメニューを表示します。

グループ化をクリックします。
グループ化ダイアログボックスが表示されます。

年代別でグループ化したいので、先頭の値を10。末尾の値を80。単位を10と入力してOKボタンをクリックします。
ピボットグラフはこのように変わりました。

あとは、棒グラフを太くして完成ですね。
縦棒グラフをクリックして、書式タブのグラフ要素が「系列”集計”」になっているのを確認します。

選択対象の書式設定をクリックします。
データ系列の書式設定作業ウインドウが表示されます。

系列のオプションの「要素の間隔」を0%にします。

枠線に「線(単色)」で黒色を設定しましょう。
ピボットグラフが完成しました。

このように、ヒストグラム用の集計表を作る必要はありませんね。
また、性別など別のフィールドをボックスに設定するだけで、カスタマイズしたヒストグラムを作成することができます。

11/23/2019

Excel Technique_BLOG Categoryに追加しました。2019/11/23

Excel Technique_BLOG Categoryに追加しました。

<目次サイト>

このBLOGの記事を、
カテゴリー分けにした【Excel Technique_BLOG Category】に追加しました。

Excel。土日祝日で色を塗り分けるカレンダーを改めて作り込んでみる

土日で塗り分けだけじゃなくて、祝日もわかるようにしたいとか。
2月なら28日まで表示というようにしたい。という質問をいただきましたので、改めて、一つの作品を作り込んでいってみたいと思います。

https://infoyandssblog.blogspot.com/2015/01/excel1.html
https://infoyandssblog.blogspot.com/2015/01/excelcalendar2.html
https://infoyandssblog.blogspot.com/2015/01/excelcalender3.html
https://infoyandssblog.blogspot.com/2015/01/excelcalender4.html
https://infoyandssblog.blogspot.com/2015/01/excelcalender5.html
https://infoyandssblog.blogspot.com/2015/01/excelcalender6.html

11/21/2019

Excel。抽出したデータが表のどこにあるのかわかるようにしたい。【Conditional formatting】

Excel。抽出したデータが表のどこにあるのかわかるようにしたい。

<条件付き書式>

データを抽出する方法は、VLOOKUP関数など様々な方法がありますが、表のどこにデータがあるのか知りたい場合、どうしたらいいのでしょうか?

次のような表で説明していきます。

A4:B11に表があります。

A2に顧客コードを入力すると、そのコードに合致する顧客名をA4:B11の表から抽出するシートです。
なので、B2には、VLOOKUP関数が設定されています。

ちなみに、B2の数式は、
=VLOOKUP(A2,$A$5:$B$11,2,FALSE)

A05というのが、A4:B11の表のどこにあるのかを、わかりやすくしたいというのが今回の目的です。

そこで、今回は、条件付き書式を使って、該当するデータの行を塗りつぶすように設定していきます。

A5:B11を範囲選択します。

ホームタブの条件付き書式から「新しいルール」をクリックします。
新しい書式ルールダイアログボックスが表示されます。

ルールの種類を選択してくださいには、「数式を使用して、書式設定するセルを決定」を選択して、ルールの内容を編集してくださいには、「=$A$2=$A5」という数式を設定します。

塗りつぶしを設定しますので、書式ボタンをクリックします。
セルの書式設定ダイアログボックスが表示されます。

今回は、塗りつぶしを行いますので、塗りつぶしタブから任意の色を選択してOKボタンをクリックします。

元のダイアログボックスに戻りますので、OKボタンをクリックします。

このように、該当データを表のどこにあるのか、条件付き書式を使ってセルを塗りつぶすことができました。

条件付き書式で数式を設定すると、色々な表現をすることができますよ。

11/20/2019

Excel関数辞典 VOL.21。DEGREES関数~DMIN関数

Excel関数辞典 VOL.21。DEGREES関数~DMIN関数

<Excel関数>

今回は、DDB関数~DECIMAL関数までをご紹介しております。

データベース系の関数を今回は多く紹介しています。

DEGREES関数
ディグリーズ
ラジアンを角度に変換する
DEGREES(角度)


DELTA関数
デルタ
2つの数値が等しいかどうか調べる
DELTA(数値1,数値2)


DEVSQ関数
ディブスクウェア
数値の偏差平方和を算出する
DEVSQ(数値1[,数値2,…])


DGET関数
ディーゲット
データベースから1つの値を抽出
DGET(データベース,フィールド,条件)


DISC関数
ディスク
割引債の割引率を算出
DISC(受渡日,満期日,現在価値,償還価額[,基準])


DMAX関数
ディーマックス
条件を満たすレコードの最大値を算出
DMAX(データベース,フィールド,条件)


DMIN関数
ディーミニマム(ディーミン)
条件を満たすレコードの最小値を算出
DMIN(データベース,フィールド,条件)

11/18/2019

Excel。横軸の項目が多すぎてわかりにくいので、2か月おきで横軸を表示したい【Line graph】

Excel。横軸の項目が多すぎてわかりにくいので、2か月おきで横軸を表示したい

<折れ線グラフ>

折角グラフ化するのだからわかりやすく、見やすくしたいと思うわけですが、ちょっとしたことを知っている、いないで表現できる、できないが生まれてしまいます。

例えば、次のような月ごとの売上表があります。

この表から、マーカー付き折れ線グラフを作ってみます。

作成だけならば、これで終了なのですが、横(項目)軸を見ると、斜めで表示されているのがわかります。これは、グラフの横幅によって自動調整されているので、横書きにするには横幅が足らないので、相当大きくしなければなりません。

横幅を広げられるケースならばいいのですが、PowerPointで使用したら、横幅は取れないことも考えられます。
また、横幅が広がったことによりグラフ全体が間延びした印象を受けます。

そこで、次のグラフのように、横軸をアレンジして、半年ごと、あるいは、2カ月おきに、項目を表示することができれば見やすくなります。

なお、このグラフは、見やすいように、目盛線や横軸の色を黒で設定しています。

それでは、グラフを修正していきましょう。

今回は、説明の為にグラフタイトルを削除しておきます。
横(項目)軸をダブルクリックするか、横(項目)軸クリックして、書式タブのグラフ要素が横(項目)軸となっていることを確認したら、選択対象の書式設定をクリックします。

すると、右側に「軸の書式設定作業ウインドウ」が表示されます。
軸のオプションの単位を修正します。

主と補助を共に2カ月おきに項目を表示したいので、「2」と設定します。半年ごとならば、「6」とします。

軸位置を調整しますので、「目盛」に設定します。
ちょっとした見栄えだけなのですが、目盛も修正します。
目盛の種類を「交差」に変更します。また、今回は、補助目盛は不要なので、「なし」で設定しておきます。

なにがグラフに起こったのかというと、

横軸の目盛棒が交差して表示されました。

あとは、年月なのですが、「2019/01」を「19/01」と表示形式を変更して完成です。

表示形式の表示形式コードに、「yy/mm」と入力して、追加ボタンをクリックします。
グラフはこのようになっています。

横項目軸は、2カ月おきに表示することができました。
最後の処理は、フォントサイズですね。Excelのグラフは、9ptで文字を表示していますので、小さすぎてわかりにくいので、フォントサイズを大きくすることを忘れないようにしましょう。
横項目軸調整折れ線グラフ