2/14/2017

今週のFacebookページの投稿 2017/02/06-2017/02/12

今週のFacebookページの投稿 2017/02/06-2017/02/12

<Facebookページ>

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

2月6日
Word。フォントダイアログボックスにある、
隠し文字は、印刷するときに印刷されませんね。

2月7日
Word。フォントダイアログボックスにある、傍点。
これ、ぼうてんってよみます。
文字の上に・・・が付けることができますね。

2月8日
Word。
線種とページ罫線と網掛けの設定ダイアログボックスは、よく使いますよね。

2月9日
Word2010。コピーしたり切り取ったあと、貼り付けますが、
貼り付けオプションがちょっとわかりにくいですよね。

2月10日
Word。貼り付けオプションの「元の書式を保持」は、
コピー元の書式を含めて、文字列がそのまま貼り付けることができますね。

2月11日
Word。貼り付けオプションの「書式を統合」は、
貼り付け先の書式と同じ書式になりますが…
太字・斜体そして斜線は残っちゃいます。

2月12日
Word。貼り付けオプションの「テキストのみを保持」は、
文字だけが貼り付けられるのですが、
貼り付け先の書式と一部おなじになりますね。

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

Excelのショートカット一覧はこちらで書いております。
http://yandss.p2.weblife.me/shortcutkey.html

2/12/2017

Excel。CELL。アレレ!関数でセル参照に比較演算子を付けた条件で算出してくれない

Excel。アレレ!関数でセル参照に比較演算子を付けた条件で算出してくれない

<AVERAGE&COUNTIF関数>


まずは、次の表をご覧ください。

A列に営業日があって、B列はその金額。売上高ですね。
その平均が、E1に算出されている表です。

E1の数式は、

=AVERAGE(B2:B7)

単純な平均値を算出しているだけです。

そして、やりたいことは、E3にある、
金額が平均以上の日数が何日あるのか?というのを求めた表になっています。

別になんら問題はない表なのですが、
平均以上とか、以上・以下などを表現するのに、
比較演算子というのを使いますよね。

>=とか<=とか。

その比較演算子を使った条件を関数で使うと、
どうもうまく算出してくれないので困っているという声を耳にします。

実の所、悩んでしまう代表的なケースなのです。

では、一つずつ確認しておきましょう。

日数。
つまり個数を数えますので、今回登場するのは、COUNTIF関数ですね。

E3は、
COUNTIF関数の検索条件に直接E1で算出した数値を入力した場合を
確認してみましょう。

E3にCOUNTIF関数ダイアログボックスを表示しましょう

範囲には、B2:B7
検索条件には、>=324.5と入力して確定したら、">=324.5"

と入力されているのを確認したらOKボタンをクリックしましょう。

3件と算出されましたね。
これは、問題ないのですが、次はケースはどうでしょうか?

E4は、検索条件には、平均値が算出されているE1を使ってみます。

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

範囲には、B2:B7
検索条件には、>=E1と入力して確定したら、">=E1"

と入力されましたね。

これでOKボタンをクリックすると、残念ながら0になってしまします。

なぜこうなってしまったのかというと、

検索条件などを関数で使用する時に比較演算子を使うのですが、
セル番地や数式と合わせて使うときには、&で結合してあげる必要があるのです。

つまり">=E1"という文字列を検索してしまうのです。

だから検索対象が見つからないので、0と算出してしまったのです。

そこで、次のように修正してみましょう。

範囲には、B2:B7
検索条件には、">="&E1 と入力しましょう。
そして、OKボタンをクリックしてみると、今度は3と算出されてましたね。

E4の数式は、

=COUNTIF(B2:B7,">="&E1)


E5のケースは、セル参照だけではなくて、
数式でも同じように&で結合させないと文字として認識してしまい、
結果を求めることができません。念のために確認しておきます。

範囲には、B2:B7
検索条件には、">="&AVERAGE(B2:B7) と入力しましょう。

そして、OKボタンをクリックしてみると、今回も3と算出されましたね。

このように、セル番地や数式を比較演算子といっしょに検索条件で使う場合には、
比較演算子は””(ダブルコーテーション)で囲み、&で結合する
ということを覚えておくと、算出できるようになりますよ。

2/09/2017

Excel。アレレ?VLOOKUP関数の弱点!このような範囲では太刀打ちできない

Excel。アレレ?VLOOKUP関数の弱点!このような範囲では太刀打ちできない

<VLOOKUP&INDEX+MATCH関数>


まずは、次のような表があります。

6行目から従業員リストがあるとしまして、
B3に従業員コードを入力すると、C3に従業員名が表示されるという、
見た目、ベタベタなというか、VLOOKUP関数で、

”楽勝”と思えるような表なのですが、

実は、コレ。

VLOOKUP関数の弱点というか、
6行目からの従業員リストの作り方がなっていないというか、
これでは、VLOOKUP関数で算出することが出来ないのです。

百聞は一見に如かず。

VLOOKUP関数で算出してみましょう。

まずは、B3に従業員コードSM001というダミーデータを入力して、
C3をクリックしてVLOOKUP関数ダイアログボックスを表示します。

検索値には、B3
範囲には、A7:D11
列番号は、従業員名は、範囲の左から2列目にありますので、2
検索方法は、完全一致なので、FALSE。または、0ですね。

では、OKボタンをクリックしてみましょう。
すると、結果は…#N/A

なんで!とお思いでしょうけど、このように算出できないのです。

原因は、従業員リストにあります。

VLOOKUP関数で抽出するには、
抽出する値が検索値より【右側】になければ抽出することが出来ないのです。

要するに、次のような従業員リストだったら、よかったのです。


しかし、現実的に、このような順番に出来ない場合はどうしたらいいのでしょうか?

そこで登場するのが、
MATCH関数で検索値を見つけてINDEX関数で抽出する、

INDEX+MATCH関数のコンビネーションなのです。


まず、MATCH関数の動きを確認したほうがわかりやすいので、
D3にMATCH関数を作ってみましょう。

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

検索値には、B3
検査範囲には、D7:D11
照合の種類には、完全一致なので、0

そして、OKボタンをクリックしましょう。

このMATCH関数を使うと、リストの何番目にデータがあるのかがわかるようになります。

D3の数式は、

=MATCH(B3,D7:D11,0)


この算出された数値をINDEX関数で使って、抽出しようというわけです。

では、C3をクリックして、INDEX関数ダイアログボックスを表示しましょう。

INDEX関数は、2通りの引数を持つ特殊な関数ですが、

今回は行番号があればいいので、どちらでもOKなので、

配列.行番号.列番号を選んでOKボタンをクリックします。

配列には、B7:B11
行番号には、先程MATCH関数で算出したD3を使います。

OKボタンをクリックします。

C3の数式は、

=INDEX(B7:B11,D3)


これで、抽出することが出来ましたね。

このように、VLOOKUP関数の弱点というか、
範囲の表の作りによっては、VLOOKUP関数が使えないケースがありますので、
INDEX+MATCH関数を覚えておくといいかもしれませんね。

なお、C3の数式を、

=INDEX(B7:B11,MATCH(B3,D7:D11,0))

とネストにしてもOKですね。

2/08/2017

今週のFacebookページの投稿 2017/01/30-2017/02/05

今週のFacebookページの投稿 2017/01/30-2017/02/05

<Facebookページ>

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

1月30日
Word。
フォントサイズの単位ポイント pt。
1ptは約0.35mmですので、
10.5ptだと約3.675mmの四角形の中に納まる大きさの文字ということですね。

1月31日
Word。
ホームタブの均等割り付けですが、Enterマーク。
つまり、段落記号もまで含めて実行すると、
びっくりすることになりますので、注意しましょう。

2月1日
Word。
フォントサイズですが、直接数値を入力すると、
とんでもない大きさの文字にすることができますので、POPとかに使ってみましょう。

2月2日
Word。
ルーラーが表示されていない時には、表示タブのルーラーにチェックをいれましょう。

2月3日
Word。
行間は、行と行の間ではなくて、行の高さというほうが、わかりやすいかもしれませんね。

2月4日
Word。
段落に、アレコレ書式を設定して、Enterキーを押すと、
次の段落にも書式が設定されますので、
まず文字を全部入力してから作業するのがいいですね。

2月5日
Word2010。
ホームタブの書式クリアボタンは、初期の状態に戻ることは戻りますが、
蛍光ペンだけは解除できないんですね。

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

Excelのショートカット一覧はこちらで書いております。
http://yandss.p2.weblife.me/shortcutkey.html

2/06/2017

Googleスプレッドシート。日付を元号表示にするには?

Googleスプレッドシート。日付を元号表示にするには?

<Googleスプレッドシート>


Googleスプレッドシートを使っているけど、
Excelみたいに出来ない・うまくいかない。という声を良く聞くものの中で、
まぁ、一番多いのは、

日付をどうやったら、元号表示に出来るのですか?

というものかなぁ~と。

Googleスプレッドシートの表示形式では、
今の所、残念ながら、元号表示にすることができないようなのです。

というか、元号自体を認識してくれてないようなのです。
 
このように、F5に平成29年1月1日と入力して、
F6に1を入力して、F7に=F5+F6という和算の数式を作ってみると、
 
#VALUE!

というエラーが表示されてしまいました。

なんと、平成29年1月1日はテキストということで、文字になってしまっているのです。

では、表示形式では出来ないとしても、元号表示をすることは、
完全に【白旗】なのかというと、面倒ではありますが、次のような数式を作れば、
元号で表示するコトはできます。

以前作成したスケジュール表を使って、元号表示を作成してみましょう。
 
A5には、DATE関数で日付が作成されています。
A5の数式は、

=DATE($A$2,$B$2,row()-4)


E5に次のような数式を作ってみましょう

="平成"&(YEAR(A5)-1988)&"年"&text(A5,"mm月dd日")

かなり強引な数式ですね。

2017年は平成29年なので、
どうやったら、29という数値を算出できるのか?といったら、

平成が始まったのが、1989年からなので、1988を引いてあげれば、
29という数値が算出出来ます。

あとは、月日を合体させてあげるという形にすれば、元号表示が可能になります。

ただ、この数式は欠点がありまして、昭和が対応していない。

そして、平成1年という表示よりかは、平成元年という【元年】の表示にしたいですよね。

この2点に対応した数式に変更していきます。

まぁ大正も明治も対応させたいのですが、
数式が煩雑になるので、今回は、昭和・平成のみの対応に今回はさせていただきます。
さらに、昭和元年も今回はパスということで…

準備として

昭和最後の日は、昭和64年1月7日で1989/1/7 シリアル値は32515

平成最初の日は、平成元年1月8日で1989/1/8 シリアル値は32516

平成元年大晦日は、平成元年12月31日で1989/12/31 シリアル値は32873

これらのシリアル値を使っていきます、
そうしないと、いちいち年月日を使わないと行けなくなりますので、
数式を作るのに、不便ですね。

そして、Googleスプレッドシートは、
Excelと異なり、ダイアログボックスがありませんので、
直接入力で数式を作る必要があります。

では、作成する数式は次のようになります。

=if(A5>32515,if(AND(A5>32515,A5<=32873),"平成元年"&text(A5,"mm月dd日"),"平成"&(YEAR(A5)-1988)&"年"&text(A5,"mm月dd日")),"昭和"&(YEAR(A5)-1925)&"年"&text(A5,"mm月dd日"))

う~む長い!

どういう考え方なのかというと、

まず、平成か昭和かを判断するのでIF関数の後に>32515という条件を使っています。
そして、平成元年なのか?ということを判断させる必要がありますので、
AND関数を使って(>32515,<=32873)という条件を使っているわけですね。

Googleスプレッドシートさん。
いずれ、元号表示を出来るようにしてくださいね。

2/03/2017

Excel。VBA。オブジェクト?プロパティ?メソッド?カタカナが苦手な人へ

Excel。VBA。オブジェクト?プロパティ?メソッド?カタカナが苦手な人へ

<VBA>


VBAを勉強するときに、

やりたいことのプログラム文から勉強したらいいのか?
それとも、それぞれの構文を勉強したらいいのか?

と良く聞かれますが、「英語」を勉強するのと似ているかもしれませんね?

文法を勉強したほうがいいのか?単語や文章を勉強したらいいのか?

これに似ていますね。

まずは、文法というか、構文を勉強しようとした場合、
多くの方が、最初に登場する【カタカナ】が壁になってしますようです。

特に、

オブジェクト・プロパティ・メソッド。

が壁になって、VBAが苦手気味になってしまうようです。


VBAも、Excelのテクニックの一つなので、知っておいて損はないですよね。

そこで、今回は、オブジェクト・プロパティ・メソッドを簡単に紹介してみたいと思います。

オブジェクト

操作対象が「オブジェクト」と呼ばれています。

例えば、B2を範囲選択していますが、
このセルも操作対象なので、オブジェクトになります。

VBAでは、Range(“B2”)と表現しますね。

範囲選択ではRangeオブジェクトを使うというのが基本になりますね。

当然セルだけでなくて、シートを操作することもありますし、
ブックを操作することもありますよね。

さらにExcel自体を閉じたりしますので、Excel自体を操作することもありますよね。

それぞれ操作対象になるわけですから、それぞれがオブジェクトということになるわけです。

ワークシートは、Worksheetsオブジェクト
ブックは、Workbookオブジェクト
Excelは、Applicationオブジェクト

という名前があるのです。

補足なのですが、Worksheetsオブジェクトですが、
シートが複数ある場合には、Worksheetsコレクションという言い方もあります。

プロパティ

先ほどのオブジェクトの状態を表すのが「プロパティ」と呼ばれています。

プロパティを調べるには、次のような命令文を作ってみるとわかります。
Sub プロパティ()
    MsgBox Range("b2").Value
End Sub

このように、
Valueを使ってあげると、オブジェクトの状態=範囲の内容を調べることが出来ます。

この.Value。これがオブジェクトのプロパティ(状態)を表示してくれるので、
Valueは、プロパティに該当します。

なので、次のような命令文を作ってみると、2017/3/1に置き換わりますね。

Range(“b2”).Value = “2017/3/1”

オブジェクト.プロパティ=値

という形にすれば、オブジェクトを変化することが出来るわけです。


ついでなので、Excelでなれている人は、この=(イコール)がわかりにくいようですね。

b2が2017/3/1
というのではなくて、
2017/3/1がb2に入るということなのですね。


メソッド

オブジェクトの動作を表すものが「メソッド」と呼ばれています。

次のような命令文を作ってみましょう。
Sub メソッド()
    Range("b2").Select
    Range("b2").Copy Range("i2")
End Sub

まず、Range("b2").Select ですが、
「.Select」のSelectは選択するという動作をしますから、
メソッドということになりますので、Selectメソッドという呼び方になります。

オブジェクト.メソッド


という形ですね。

そして、動作の条件を指定するには、メソッドのあとに、引数を設定します。

Range("b2").Copy Range("i2")

これは、b2の値をi2にコピーするという意味ですが、コピーというのが動作なのでメソッド。

そして、i2に。という指定をしているので、Range("i2")が引数ということになります。

オブジェクト.メソッド 引数

という形になります。


このように、カタカナがありますが、
少しずつ、自分でわかりやすいように、
置き換えてあげて使っていくようにするといいかもしれませんね。

2/01/2017

2017年01月の閲覧数TOP10をご紹介

2017年01月の閲覧数TOP10をご紹介

<TOP10>

2017年01月。
皆様に閲覧していただいた項目のTOP10をご紹介させていただきます。

1位
Excel。Graph。縦棒グラフに自動的に平均値の線を引くにはどうしたらいい?
https://infoyandssblog.blogspot.jp/2015/03/excelgraph.html

2位
Excel。アンケート結果を年代別で集計する方法
https://infoyandssblog.blogspot.jp/2013/12/excel-rounddowncountif.html

3位
Excel。折れ線グラフを交点0からスタートさせるには?
https://infoyandssblog.blogspot.jp/2013/07/excel0.html

4位
Excel。B/S(貸借対照表)をグラフで作ってみよう!
https://infoyandssblog.blogspot.jp/2013/07/excelbs.html

5位
Excel。折れ線グラフの間を塗りつぶしたいけど、どうしたらいいの?
https://infoyandssblog.blogspot.jp/2015/12/excelgraph.html

6位
Excel。出勤時間を自動で塗りつぶす日勤シフト表を作ってみる。
https://infoyandssblog.blogspot.jp/2015/05/excelroster.html

7位
Excel。カレンダー祝日がわかるようにセルに色をつけてみよう
https://infoyandssblog.blogspot.jp/2013/11/excel-match.html

8位
Excel。マイナスデータの棒グラフを作ると綺麗にできないのでアレンジしてみる
https://infoyandssblog.blogspot.jp/2015/05/excelgraph.html

9位
Excel。積み上げ縦棒グラフの合計値を表示する方法
https://infoyandssblog.blogspot.jp/2014/05/excel_14.html

10位
Excel。100%積み上げグラフにパーセントのデータラベルを表示したい
https://infoyandssblog.blogspot.jp/2013/12/excel100-rounddowncountif.html