GEN MUTO'S HOMEPAGE  エクセル大事典  あなたはいったいエクセルで何をしたいのか?

エクセルExcel大事典 エクセル大事典TOPページへ
 ■ あなたはいったいエクセルで何をしたいのか?
  エクセル関数を使いこなす
 
■ エクセルの効率化の第一歩はワークシート関数のマスターです。
 
ところでエクセルのワークシート関数っていくつあるかご存じですか?
Excel2007で340をゆうに超えます。
http://office.microsoft.com/ja-jp/excel/HP100791861041.aspx
ずいぶんたくさんありますね。

ちなみに皆さんはLCMという関数をご存知ですか?この関数は最小公倍数を返す関数です。
知らないって?安心してください。筆者もExcelのヘルプでたった今知りましたから。
このような関数は使わない人にしてみると全く縁のない関数です。
少なくとも私はこの関数を使うことはこの先もないでしょう。
これとは逆に、しょっちゅう使う関数、ワークシート関数の代表とでもいうべき関数たちが存在します。
たとえばSUM、たぶん一番最初に覚える関数の代表がこれではないでしょうか。
そのほかの代表的な関数は後半に紹介します。

皆さんに一つだけ気を付けてほしいことがあります。それは「関数は組み合わせてこそ効果的な使い方ができる」ということです。
単独で使う関数というものはあまり意味がありません。基本的に関数は組み合わせて使用するものなのです。

たとえば、購入品リストから購入単価を拾ってきて表示させるにはどうすればいいでしょう?
すぐに思い浮かぶのがVLOOKUP関数を利用することですね。
=VLOOKUP(A3,konyu_lst1,3,FALSE)
(※ 購入品リストのセル範囲に"konyu_lst1"と名前を付けているものとします)

購入品リストの1列目には購入品番号、2列目には購入品名、3列目には購入単価が入力されています。
これだけでは購入品リストから単に購入品名と購入単価を拾ってくるだけの関数式です。
これはこれでいいのですが「購入先を複数追加してしかも購入単価を瞬時に切り替えたい」なんて要望が出たときはどうしたらいいでしょう?
VBAを使って書き換えるしか方法がないのでしょうか?

実はINDIRECT関数を組み合わせることでVBAを使用しなくても可能になります。
購入品リストをもう一つ追加してみましょう。追加した購入品リストのセル範囲には"konyu_lst2"と名前を付けるものとします。
=VLOOKUP(A3,INDIRECT($A$1),3,FALSE)
として、セルA1にkonyu_lst1、konyu_lst2と、購入先を指定してやれば、瞬時に参照先を変更します。
以降同じ方法で、いくらでも購入先別の購入品リストを追加できます。


さらに購入先一覧を別に作成しておき、セルA1の入力規則からリスト選択し、konyusaki_lstなどとすればもうちょっとしたアプリ並です。VBAを使わなくてもこのくらいのことは関数で十分にできるのです。

ちなみにこのINDIRECT関数は、私の尊敬する田中亨氏(MicrosoftOfficeExcelMVPで膨大な数のExcel関連書籍の著者)がとても興味深い使用方法をご紹介しています。
INDIRECTによる画像の入れ替え 田中亨氏の公式サイト「OfficeTANAKA

これを応用することで次のようなことが可能になります。
Excelを使用してトランプゲームを作成しているとしましょう。シートに貼り付けられたトランプの画像をVBAで張り替えることは簡単です。
しかしこの方法なら画像の張替処理にVBAは必要ありません。
 
VLOOKUP式で別表のトランプ画像を拾ってきています。ゲーム側のプログラムは表示するトランプの値を書き換えるだけでOKです。
たとえばプログラムで扱うトランプのカードデータをスペード101〜113、ハート201〜213、クラブ301〜313、ダイア401〜413、ジョーカーは777、裏面は888、カードなしは999にするとします。

ワークシート上は張り替える画像データを別表からVLOOKUP関数で拾ってきて表示領域のカード画像を張り替えます。
ゲームプログラム側はスペードのエースを表示させたければ"101"の数字をセルに入力するだけです。
カードを伏せたければ"888"、カードを非表示にするなら"999"をセルに代入するだけです。

非常に楽ですね。
画像の張替ルーチンが必要ないのでプログラムは純粋にゲーム制御ルーチンだけ用意すればいいのです。

サンプルを用意しました。セルB1〜F1までの数字を101〜113、777、888、999の数字に変更して動作を確認してみてください。 サンプルファイル(c01p02_01.xls 85KB)
(全部用意するのは面倒だったのでスペード、ジョーカー、裏面、カードなし、だけ用意しました)
なお、トランプの画像はこちらのサイトの素材を使用しております。
※ http://www11.ocn.ne.jp/~ugetsu/
 
 
 
■ 重要な関数について一覧リスト
 
数学/三角関数
SUM(数値 1,数値 2,...)
 合計関数。ありとあらゆる場所で使用します。とりあえずこれだけでも知っていればExcelで表を作っているのに電卓で合計を計算するという愚行を避けることができます。
SUMIF(範囲,検索条件,合計範囲)
 リストの中からある条件に合致するデータの合計を求められます。使用例としては受注一覧表などで、商品部二課の金額だけ合計したいなどといった場合によく用いられます。
ROUND(数値,桁数)、ROUNDUP(数値,桁数)、ROUNDDOWN(数値,桁数)
 四捨五入したり、切り上げたり、切り捨てたり、いたるところで使われる汎用的な数学関数です。

論理関数
IF(論理式,真の場合,偽の場合)
  様々な場面で用いられる基本的な条件判別関数。単独で用いられることはあまりなく他の関数と組み合わせるか、オートフィルして列全体の評価に用いたりします。

文字列関数
TRIM(文字列)
  文字列の先頭と末尾からスペースを削除する文字整形関数。オフコンや他データベースからデータをコンバートしたときに余分に入ってしまった空白をとるのに便利です。
SUBSTITUTE(文字列,検索文字列,置換文字列,置換対象)
  文字列内の指定した文字列を他の文字列に置き換えます。便利といえば便利ですが文字列の置き換え機能自体はエクセルも持っています。会社名で並び替えるときに一時的に前鰍抜いたり、TRIMで削除しきれないスペースを一時的に削除するのに有効です。
ASC(文字列)、JIS(文字列)
  全角−>半角がASCで半角−>全角がJIS。セットで覚えるといいです。全角、半角混合のデータを統一させ、重複入力を防ぐなど応用範囲は広いです。
RIGHT(文字列,文字数)、LEFT(文字列,文字数)、MID(文字列,開始位置,文字数)
  文字列の抜き出し関数。TRIM同様にコンバートしたデータの整形などによくつかわれます。
UPPER(文字列)、LOWER(文字列)
  小文字−>大文字はUPPER、大文字−>小文字はLOWER、これもセットで覚えるべし。
TEXT(値,表示形式)、VALUE(文字列)
  数値−>文字はTEXT、文字−>数値はVALUE、これもセットです。

検索/行列関数
VLOOKUP(検索値,範囲,列番号,検索の型)
  もっともよくつかわれる検索関数。指定された別リストから検索値のデータを探し出し、列番号右側にある値を返します。商品マスタや社員マスタなどを別表で用意する必要があります。
OFFSET(基準,行数,列数,高さ,幅)
  指定されたセル範囲の参照を返します。表引きの元表の大きさが変わるときなどに便利です。
MATCH(検査値,検査範囲,照合の型)
  指定されたセル範囲で特定の値を検索し、何番目に位置するかを返します。VLOOKUPの列位置指定に組み合わせて使うと、将来、表引きの元表構成が変わっても対応できます。

統計関数
RANK(数値,範囲,順序)
  選択されたセル範囲の数値に順位をつけるとき便利です。
COUNTIF(範囲,検索条件)
  選択されたセル範囲にある条件に合致したセルの個数を返します。条件指定やワイルドカードが使えるので、「平均点以上の生徒数」や「東京に住む会員数」などが簡単に調べられます。

日付と時刻の関数
WEEKDAY(シリアル値,種類)、NOW()
  WEEKDAYは予定表などを作った時に「とりあえず土日を抜きたい」なんて時に便利。NOW関数は現在の日付と時刻の挿入。書類の頭によくつけます。ちなみに印刷オプションでヘッダに現在の日付を挿入可能です。

情報関数
ISBLANK(テストの対象)、ISERR(テストの対象)
  VLOOKUPなどで検索値がリストにないと#N/Aエラーが出るのでうっとうしいとき、ISERR関数を使えばエラー値の場合は値を表示させないといったことも可能です。

 

>> 次の話にすすむ


サイト内検索ができます

Microsoft Most Valuable Professional

Microsoft MVP Excel
武藤 玄 プロフィール
 

■■■ 執筆した書籍 ■■■
 

EXCEL VBA 業務自動化
 

Excel VBA を5日でマスターする本
 

仕事を速くする Excel VBA 入門
 

Excel VBAと業務改善のポイントがわかる本
 

Access VBA ベーシック スタンダード
 

Excel VBA アクションゲーム作成入門
 

■■■ 連載中の記事 ■■■
 

Excel VBAで業務改善!
 

実務で使うExcel VBA
 


TOPページ


■ エクセルVBA超入門

 ・9ステップで"Hello World!"
  からオブジェクト指向まで!
  1."Hello World!"を表示しよう
  2.基本はデータの入出力
  3.繰り返し処理
  4.シートで簡易データベース
  5.名前をつけよう
  6.構造化プログラムに挑戦
  7.構造体を使ってみよう
  8.フォームを使ってみよう
  9.オブジェクト指向に挑戦

■ エクセルVBA中級編

 ・VBAでいろんなテクニック
  変数・関数のスコープ
  引数の参照方法を明示
  配列の中身を一気に複写
  識別子がよいコードを作る
  データ定義型をもっと知ろう
  定数と列挙型を活用しよう
  エラー処理の重要性1
  エラー処理の重要性2
  いろいろな条件分岐
  いろいろな繰り返し処理
  演算子について知ろう
  文字列操作 連結 変換 置換
  文字列操作 検索 比較 書式
  日付操作関数を知ろう
  数値操作・評価・その他関数
  並び替えソートをマスター
  いろいろな検索をマスター
  VBEditorを使いこなそう
  マクロの記録を活用しよう1
  マクロの記録を活用しよう2
  VBAからVBEを操作しよう1
  VBAからVBEを操作しよう2
  VBAからVBEを操作しよう3
 ・ワークシートを使いこなす
  セルの参照をマスターしよう
  セルの選択をマスターしよう
  セルの操作をマスターしよう
  セルの書式設定をマスターしよう
  行・列の操作をマスターしよう
  シートの参照をマスターしよう
  シートの操作をマスターしよう
  ブックの操作をマスターしよう
  ウィンドウの操作をマスターしよう
  イベントプロシージャを活用しよう
  ワークシートを印刷しよう1
  ワークシートを印刷しよう2
  音声(読み上げ)機能を操作しよう
  グラフを操作しよう
 ・ユーザーフォームを使いこなす
  ユーザーフォームを使おう
  UserFormsオブジェクト
  Labelコントロール
  TextBoxコントロール
  ComboBoxコントロール
  ListBoxコントロール
  CheckBoxコントロール
  OptionButtonコントロール
  ToggleButtonコントロール
  CommandButtonコントロール
  ScrollBarコントロール
  SpinButtonコントロール
 ・VBA関数の一覧
  Aから始まる関数の一覧
  Cから始まる関数の一覧
  Dから始まる関数の一覧
  Eから始まる関数の一覧
  Fから始まる関数の一覧
  Gから始まる関数の一覧
 
■ エクセルVBAを極める
 VBAスーパーテクニック
 
 ・データベースへ接続してみよう!
  CSVファイルへの接続
  ワークシートへの接続
  mdbファイルへの接続
  SQL Serverへの接続
  ADOレコードセットの操作1
  ADOレコードセットの操作2
 ・ファイルを操作してみよう!
  FileSystemObjectの操作
  Drive File Folderの操作
  TextStream ダイアログ
  ステートメントでファイル操作1
  ステートメントでファイル操作2
 ・他アプリと連携してみよう!
  ActiveXオートメーションの操作
 ・ゲーム技でマクロを超える
  エクセルで音を鳴らす1
  エクセルで音を鳴らす2  
  スクリーン座標を取得
  様々なイベント取得
  リボンUIを制御しよう1
  リボンUIを制御しよう2
  シート上でアニメを動かそう
 
■ 一歩上行くエクセル
 基本操作の完全マスター!

 
 ・あなたはいったい
  エクセルで何をしたいのか?
  エクセルで業務効率化
  エクセル関数を使いこなす
  エクセルの便利技
  エクセルは最高の帳票ツール
 ・エクセル基本操作上級編!
  セル選択、コメント、シリアル値
  オート機能を使いこなそう!
  参照、条件付書式、入力規則
  関数をもっと理解しよう!
  配列数式を有効利用しよう!
  データの正規化をしよう!
  ショートカットキーを利用しよう1
  ショートカットキーを利用しよう2
  Office用アプリを作成しよう!
  PowerPivotとExcelで簡単BI!
 ・世間の誤ったエクセルの
  べからず集
  エクセルで文章を書くべからず
  エクセルで図形を描くべからず
  エクセルでシステムをつくるな
 
■ エクセル関連その他

 ・エクセルコミニュティにあなたも
  参加しませんか?
  Excel関連リンク・コミニュティ
 ・VBの理解がVBAをマスターする
  最短距離!
  VB関連の老舗・大家サイト
 ・エクセルExcel大事典掲示板
 ・プライバシーポリシー

2000アイテムを超えるラベルを販売
送料無料、即納対応の優良ショップ
今買っているラベルより確実に安い!
OAラベルの販売専科グラフトラベル




エクセルExcel大事典ははリンクフリーです エクセル大事典Excel大事典
お問い合わせはこちら gengengen@yahoo.co.jp

Copyright© Gen Muto 武藤 玄 All Rights Reserved,