富田パソコンサークル (Tomita PC Circle)

京都の京丹波町富田の「公民館」をホームに活動するパソコンサークルのブログ。

2015サークルの課題(その2):Excel 「ドロップダウン・リスト」

2015年06月14日 | エクセル

list0

課題から・・・
曜日の入力と仕組みの次は、「品目」の欄にある仕掛けの説明に移ります。
上の図は、品目を入力しようとして、セルをクリックするとセルの右端に「▼」の印が現われ、
さらにその印をクリックすると
図のように、あらかじめ設定された「品目」のリストが表示され、その中から選択すれば、いちいちキーボードを使って
入力する手間も省けますし、間違って入力するミスも防げます。
たとえば氏名など、その都度入力する中身が変わりうるようなセル内容なら仕方がありませんが、
入力するものが、あらかじめ決まっている場合には、この仕掛けはとても便利な方法だと言えます。

さらに、後で集計する場合などリストの中から選ぶ仕組みは、誤入力などのミスから生まれる混乱を未然に防ぎます。
たとえば、「リンゴ」とカタカナ入力しても「りんご」とひらがなでインプットしても、人間ならそれが同じ「品目」だと
おおよその判断をしてくれますが、コンピュータの中では、全く違うものとして区別されます。
また、家計簿の費目などを入力する際に、あるときは「交通費」としたけど、
セル内で、字をそろえる意味で時には気まぐれで、「交  通  費」などとスペースをいれて、
文字間を調整して入力したというような場合では、使う文字は同じでも「スペース」もまた一つの文字として
カウントされますので、同じ費目としてはとらえられません。
こうした人間的な「気まぐれな」不統一な入力も、この仕組みなら、防ぐこともできます。

エクセルでは、この仕掛けを「ドロップダウンリスト」とか時には「プルダウンリスト」と呼んでいます。

これは、それほどの高度な技能を必要としませんし、実際に前回のサークルでも意外なほどに簡単にクリアできた(?)
気もしないではありません。

その基本的なやり方は、まずはじめに「ドロップダウンリスト」を設定したいセルをクリックして「選択します。」
次に、「データ」というタブを選択し、そのリボンの中から下図のように
データの入力規則」という「コマンド・ボタン」を探します。

nyuryokukisoku

すると、下図のようなダイヤログが現われますので、「設定」というタブを選択し、
条件の設定である「入力値の種類」のところで、まさに「ドロップダウン」する項目の中から
リスト」を選びます。

 

nyuryokukisoku2

次に、その下にある「元の値」という欄をクリックして、設定したいリストの中身をここに入力します。

nyuryokukisoku3

 

ここで、例として作りたいリストの中身を「○×▲」とするとします。
この場合は、「元の値」欄に「○×▲」と直接入力します。ただし、それぞれを区分するために
文字ごとに「半角英数」の「,」(カンマ)で区切る必要があります。
「男と女」のような場合は、「男,女」のようにカンマで区切らねばなりません。

nyuryokukisoku4

というのが、基本的な仕組みですが、いくつもの項目がある場合に、
項目を直接入力することも、またその一つ一つを「」で区切るのもなかなか骨が折れます。

実は、「課題」のように、同じシートやブックの別のシートでもかまいませんが、いわゆる別表のように
あらかじめどこかのセルに、リストにできる入力されたデータがすでにあるのなら、
それを丸ごと、リストアップすることもできます。

listup



先ほどの、「元の値」を入力する手順のところで、
元の値」欄をクリックして選択した状態(アクティブにする)
にしたところで、下図のように
別表の項目欄を、ドラッグすると、「どこからどこまで」とした範囲を
元の値」に自動的にリストアップしてくれます。


2015-06-11 17-55-19

こうすることによって、入力済みのデータを利用すると、
冒頭に紹介した「ドロップダウンリスト」が意外にも簡単に作ることができます。

list0

あとは、仕掛けができたこの「セル」を他の範囲にコピーすれば、
ドロップダウンリストを使った入力欄が完成します。


2015サークルの課題(その1):Excel 日付と曜日の★コツ

2015年06月04日 | エクセル

2015-06-013

エクセルでは、たとえば「5月1日」と 「日付」を入力するときに、
ワードなどのワープロと同じように、キーボードで「5月1日」とそのまま「文字列」として入力せずに
半角英数モードで、数値として「5/1」とか「5-1」として入力すると、自動的にエクセルの方で
日付と解釈して、セル上の見かけでちゃんと「5月1日」という風に表示してくれると、これまでに
このブログでも繰り返し説明してきました。

Excelの基本的な原則として、
日付データの扱いについて、基本的には1900年1月1日を起算日として、
1から始まる
シリアル値(連続値)で持っている。・・・・・となっています。

この小難しい文言と理屈の説明をあえてすれば・・・・
(ただし「エクセルのオプション」の
詳細設定に「1904年から計算する」のチェックボックスが用意されていて、このチェックがされていない場合)

パソコンの時計の設定が、正しく行われているという前提で
2015年の今、エクセル上で、セルに「5/1」「5-1」と入力すると、「5月1日」と表示されます。
ただし、見た目は「5月1日」と表示されていても 、実際は数値が入力されております。
それが証拠に、あえて入力したセルの書式設定で、書式を「数値」としてみると、     
「42125」と入力されていることに気づかされます。 この万を超える数値とは・・・・・
まさにこれは、2015年5月1日が「1900年1月1日」から数えて42,125日目にあたると言うことを示しています。
「5/1」とか「5-1」というルールで入力すると、エクセルが今日が何日目と自動的に換算してくれています。
このことは、非常に重要なことで、日付に数値としての意味を持たせて日付というものの差引や検索・比較などを可能にしてくれます。
これが「5月1日」という月日までご丁寧に文字列と入力したのでは、こうした演算ができないばかりか
その日のデータ」という根本的な扱いができなくなるのです。 日付はそれだけで数値データなのです。
    
この原則を頭にたたき込んだら・・・・

サークルの「課題」に話を移して、特に日付とその曜日のところに着目しましょう。

2015-06-01 2
ぱっと見ると当たり前のように思えますが、この表では日付とその右側のセルにある曜日の表示は、実は連動していて
日付のところは、先ほどのように「5/1」とか「5-1」という規則に沿って、入力していますが、「曜日」のセルには何も入力したりしていません。
日付が図のように「A列」であったら、曜日は同じ行の「B列」に連動して表示される仕掛けになっています。
ここんとこの、「コツ」は、A列に「入力」したら、B列に自動的に反映されるということです。

Excelでは、それを「数式」という仕掛けで表します。
「すうぅしきぃ~」って聞くだけで「ぎょっ」となって、体中に「サブイボ」出る人もいるかもしれませんが、 それほどの数字アレルギーなら
仕方ありませんが、こういう場合、エクセルでは「数式」という仕掛けが、どうしても必要になります。

ただ、数式といっても、あのキライな「数学」で言うところの数式ほどには、エクセルが言う数式は、取っつきにくくはありません。

まず、キーボードから「」・・・イコールキーを入力すれば、数式が始まります。
算数や数学アレルギーの人にとっては、イコールキー)は、「等しい」という単一の意味にだけ使われていますが
コンピュータの世界では、必ずしも等しいという意味に使われません。
中には、「A=A+1」というような記述で表されることもあります。こんな表示されると、「等しい」などという
理屈が全く成り立たないし、式としてあり得なくなってしまいます。ですからコンピュータの世界では、
イコールは等しいという意味ではなくむしろ「代入する」 という意味であり・・・
・・・というのも堅苦しい言い回しですが、
どこかのセルの「「値」を持ってくるというような意味合いに捉えていいでしょう。

では早速、A列に入力したデータを元に、その右横のB列に「曜日」を表示させる仕組みを作ることにします。
口が酸っぱくなるほど、「日付」は実際は数値のデータと繰り返してきました。
であれば、それを「7」で割れば、曜日は求められるわけですから意外に簡単に求められます。
これも日付がデータとして入力されていれば、セルの書式設定で、表示できるのです。
これは、まぁ一つの覚えごととして、丸覚えしとくのが一番ですが
日付を曜日で表示させる書式は、「
aaa」で月、火、水 ・・・・「aaaa」と四つにすると月曜日、火曜日、水曜日
という表示になり(aaa) とすると、(月)、(火)、(水)・・・・と表すことができます。

2015-06-01 5
で、上の図のように書式設定のダイヤログの「表示形式」タブ上で設定すればいいのです。

となると、B列は、A列そのものをコピーして、セルの表示の書式を変えればいいということになりますが・・・
単純なコピーだと、A列に変更があった場合には、面倒でも同じようにコピーして修正しなけれならなくなります。
それは、最もミスが起こりやすく、間違いの元になりやすいパターンの一つです。
そこで、B列にはあえて、「数式」というカタチで、隣のセルを指定しておくと自動的B列も連動して変化するので
修正や訂正したセルは、入力セルだけにとどまり、いちいち他のセルまで修正しなくてすむという理屈になるのです。

例題に戻ると、B1に左横のA1のセルの値を、持ってきたい時には、B1のセルに「=A1」という数式を設定すればいいので、
下図のように、B1のセルを選択し、「=」キーを入力したらその後に「A1」とすると
数式バーにも、「=A1」と表されます。・・・これで、B1のセルには「A1の値を持ってくる」ということになります。

2015-06-04 0-01-44

実は・・・エクセルで言う「数式」は、数学でいう「式」というよりも
むしろ「何がどうして、どうなる」という文章に近いものだということに気づかれたともいます。
  
ただ、こうした数式をそれぞれのセルに、いちいちキーボードから入力しなければならないとしたら気が重くなりそうですが
エクセルには、さらに便利な仕組みがあらかじめ用意されています。
まず、数式の入力の方法ですが、実際の数式を入力する手順は、
セルの数式を「=A1」したいときには、まず「イコールキー」をセルに入力したら、次にA1をセルをクリックします。
そうすると自動的に「=A1」という数式を作ってくれます。

さらに、後に続く、B列のセルも今の手順で、一つ一つ数式を作っていくのか、というと今度もまたそんなことをしなくてすみます。

この場合、数式を入力できて完成したB1のセルを選択し、セルの右下角に黒十字の「コピーマーク」が現われたら
そのまま、そのマークを、同じ数式を設定したいセル範囲までドラッグすると
ものの見事に、いとも簡単に「数式」を自動的に、コピーしてくれます。

しかも賢いことに、単にA列のコピーしたのではなく、セルの中身の数式をそれぞれのセルの位置どりに対応して
数式という仕掛けをコピーしてくれる優れた機能が潜んでいます。
つまり、たとえて言うとB2には「=A1」というそのまんまのコピーではなくて、
その真横のA2の値でないと意味がないので、数式は「=A2」となっていなければなりません。
こうなってさえいれば、 もしもAの列のデータに訂正があったときに、B列の曜日も連動して、変化させることができるのです。
これこそが「相対参照」というエクセルが持つ極めつけの機能です。
ちなみに、B5のセルをクリックして、数式バーの表示を確認すると・・・下図のように
「=A5」とちゃんと数式がコピーされていることに気づきます。

2015-06-01 4

がしかし、このままでは見た目はA列もB列もおんなじなので、
B列の表示を「曜日」の表示に替えてみましょう。
これも、セルの一つだけを書式設定して、表示形式をかえておき、その「書式設定」だけを
後のセルにコピーするという手順で修正することにします。

さっきの話を思い出して・・・・
それでは、一番上のセルを右クリックして、「セルの書式設定」と進み、
表示形式」というタブを開きます。そして、下図のように「種類」という欄で
表示のカタチを (aaa) として、OKとします。

2015-06-01 5

すると、B1のセルの表示形式が、「曜日」に変更できました。
そこで、下図のように出来上がったB1のセルを「右クリック」して、コピーし
その書式を反映させたいB2からB14の範囲をドラッグします。そこでまた「右クリック」します。

2015-06-01 6

ただ、そこで単純には「貼り付け」とはしません!
単純にコピーとしてしまうと、B1のセルを書式どころか
値や数式など全部丸ごとコピーしてしまいます。
そこで、下図のようなダイヤログが出てきたら、貼り付けする「要素」を選んで貼り付けられること
形式を選択して貼り付け)を覚えておきましょう。
この場合は、あくまでコピーしたい目的が「書式」だけですので
下図のように「書式だけをコピーする」アイコンをクリックして選択します。

2015-06-01 8

これで、下の図のようにB列がA列の日付に連動して、曜日が表示される仕掛けが
完成です。

2015-06-01 9 

これは、あらゆるエクセルで作る「表」で応用の利くやり口です。   


2015サークルの課題:Excelのエッセンス

2015年06月03日 | エクセル

集まる人が少なくなって、長らく続けてきたパソコンサークルにも寂しさを感じ始めてる今日この頃ですが
一方で、「Windows 10 」のリリースがこの夏に近づいてきて、パソコン周りにとっては、
大きなイベントであり、変わり目になる気がします。
そのときには、パソコンサークルでも大きな変化がやってきます。

そんなこんなの思いの中で・・・・
ふと思い直してブログを再開し、
そしてサークルに「課題」というような テーマを設けて、この一年の取り組みの柱にしていこうと
下図のような「Excelでつくる売上表」を題材にしてみました。

2015-01

一見、どうってことのない、どこにもあるような表ですが・・・・
たとえば日付に連動した曜日の表示とか同じ日の日付をあえて伏せてしまう工夫とか
品目を選ぶと、設定した単価を「別表」の単価表から自動的に引用できる仕組みや
さらに売り上げの品目ごとの集計や分析果てはグラフの表示などが売上表に入力すると
自動的に連動して、表が完成するという代物です。

慣れているものにとっては、これしきのことと一蹴されそうな「課題」ですが ・・・・
一般的にExcelといえば、SUMを使った「集計」とその表作りぐらいに思い込んでる人にとっては
いささか難関にも思えてくる「題材」です。

セルにほどこす、書式設定は言うに及ばず、 この表作りの過程では
条件付き書式であるとか、VLOOKUPやSUMIFという関数が出てきたりします。

ただ、これぐらいは、できてしまえば、
正直なところ一般的にExcelを使う場面のほとんどをこなせる 気がします。
ここから先に、これ以上進むのなら、それはそれで相当の知識も必要となるでしょう。

Excelを使いこなす・・・などというレベルは、どこに基準を置くかによりますが
お金を取って人に教えるぐらいのスキルとなると、VBAというプログラム言語はもちろん
パソコン自体の知識を相当量に必要とします。 そこまでくるとごく一般的な仕事や
日常を超えていますし、
この「Excelの道のり」をたとえば山登りにたとえたら 、
マクロを自在に操れるほどのレベルともなると、
エベレストに無酸素で登頂を目指すほどの技量を求められるのかもしれません。
しかし、パソコンをする人がみんなそんなところを目指しているわけではありません。

今度の課題は、たとえて言うと「長老山」の登頂ぐらいにあたると思います。
なんや・・・っていう声も聞こえなくはありませんが、
長老を上るのは結構骨が折れるし それほどかんたんではありません。
普段の生活では、メッタにないことですし、がんばって長老を上ることができれば
運が良ければ日本海も目にすることができるし、ここらの話とはいえども
最高峰に立つと視界が開けるものです。
その経験さえあれば、そこかしこの山歩きなど苦もなくできることでしょう。

ただし、「課題」はあくまで目標設定の一つです。
できなくてもいいし、わからなくても悔やむ必要もありません。
やらなければならないもんとも思ってもいません。
この一年をかけて、どこまで上っていけるか、それを試してみるぐらいの心がけで十分です。

ここでは、一気に行かずに徐々に歩を進める感じでぼちぼち説明していこうかなと思っています。
3歩進んで2歩下がるとも言いますが・・4歩下がっても
一度は3歩進んだという経験に意味があるんです。