Office & VBA パーフェクトマスター  RSSを登録する

国内最大のコミュニティサイト「モーグ」が配信するExcel、Access、Word、VBA等のテクニック集や連載コラム。

最新号をメルマガでお届けします    
登録 解除

規約に同意して

登録した方には、まぐまぐの公式メルマガ(無料)をお届けします。
2009/11/11

【オフパー】Vol.821 日付から曜日を計算する方法は?

◆━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◆
 あなたのスキルに+1 
    
          Office & VBA パーフェクトマスター
    
  >> http://www.moug.net/ 【オフパー】Vol.821 2009/11/11              
◆━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◆

【目次】

 ★ モーグからのお知らせ
   日付から曜日を計算する方法は?
   Excel VBAを勉強したい人にお勧め!Excel VBA ビギナーズ

 ★ オデッセイコミュニケーションズからのお知らせ
   一番人気の動画は?ユニオンクエリって知ってますか?

 ★ Office 製品共通一般機能テクニック
   ~ ツールバーに電卓を追加する

 ★ 一問多答!!

 ★ モーグフリーソフト紹介

 ★ 田中亨の Excel VBA テクニック
   ~ 列挙型変数を使う
   
 ★ 編集後記


***************************************************************************
 ★モーグからのお知らせ
***************************************************************************

 ▼日付から曜日を計算する方法は?
   
  日付が入力されたセルの表示形式を変更して、曜日も同時に表示する方法は、
  以前ご紹介しましたが、別のセルに曜日だけを表示させる方法もあります!
  さて、その方法は?
  
  ╋…━…━…━…━…╋
    ♪方法はこちら♪ → http://www.moug.net/ads/fwd_200911111.html
  ╋━…━…━…━…━╋


 ▼Excel VBAを勉強したい人にお勧め!Excel VBA ビギナーズ
   
 「マクロ記録はしたことがあるけど、VBAも少しずつ勉強したい」という方に
  お勧めのExcel VBA ビギナーズ!!
  VBAはいろいろ試してみることで実力も付いてきます。
  練習の題材が見当たらない方にも、サンプルデータも付いているので安心です♪
  
  ╋…━…━…━…━…╋
    ♪詳細はこちら♪ → http://www.moug.net/ads/fwd_200911112.html
  ╋━…━…━…━…━╋


***************************************************************************
 ★オデッセイコミュニケーションズからのお知らせ
***************************************************************************

 ▼一番人気の動画は?ユニオンクエリって知ってますか?
 
  ExcelやAccessのテクニックを動画で紹介しているスナックテクニック
  今月のAccessランキング1位は「ユニオンクエリで集計結果を最終行に追加する」
  Accessを普段使っているけど、「ユニオンクエリって?」という方は
  動画を見て、この機会にマスターしましょう!!
    
  ╋…━…━…━…━…╋
    ♪詳細はこちら♪ → http://www.moug.net/ads/fwd_200911113.html
  ╋━…━…━…━…━╋

***************************************************************************
 ★Office 製品共通一般機能テクニック     
***************************************************************************
<Contents>
ツールバーに電卓を追加する(Excel 2000/2002/2003/2007)

●概要●
データの入力などを行っているときに、ちょっとした計算がしたくて電卓を使うこと
がありますが、実は、Excelにも電卓機能があります。
通常はすぐに使うことができない機能ですが、ツールバーに起動ボタンを追加する
ことによって、作業中に簡単に使えるようになります。

●詳細●
<Excel 2003以前のバージョン>
1.[表示]メニューの[ツールバー]から[ユーザー設定]を選択

2.[ユーザー設定]ダイアログボックスの[コマンド]タブの[分類]ボックスから
 [ツール]を選択

3.[コマンド]ボックスから電卓のアイコンがついている[ユーザー設定]を選択し、
 ツールバーにドラッグ

4.ドラッグ先に電卓のアイコンが追加されたら、[閉じる]ボタンをクリック

5.ツールバーに追加された[電卓]アイコンをクリックすると、電卓が起動

<Excel 2007>
1.[Office ボタン]をクリックし、[Excel のオプション]を選択

2.[Excel のオプション]ダイアログボックスの左メニュー[ユーザー設定]を選択

3.[コマンドの選択]ボックスから[すべてのコマンド]を選択

4.一覧から[電卓]を選択し、[追加]ボタンをクリックし、[OK]ボタンをクリック

5.クイックアクセスツールバーに追加された[電卓]アイコンをクリックすると、
 電卓が起動

●補足●
Excel2000および2002には、[ユーザー設定]ダイアログボックスに[説明]ボタンが
あり、手順3でコマンドを選択したときにこのボタンをクリックすると、選択した
コマンドの説明が表示されます。

■Excel一般機能 便利機能とその他の設定関連のテクニックはこちらから
⇒ http://www.moug.net/tech/exopr/0101.htm

***************************************************************************
 ★一問多答!!
***************************************************************************
勉強したことをきちんと覚えているかを確認することは大切です。
一問多答では、ExcelやWordなどを日常使用されている方に知っておいてほしい機能
や多くの方が疑問に思われている題材をテーマに出題します!
今回は『Excelの検索に関する関数』の問題です!
---------------------------------------------------------------------------
例題)セルD1に男なら1、女なら2と入力し、その値に応じてセルE1に「男」「女」と
   表示させる数式として、正しいものを1つ選びなさい。
   (特に参照先となる一覧は用意していない)

 1. =VLOOKUP(D1,"男":"女",2)

 2. =HLOOKUP(D1,"男":"女",2)

 3. =LOOKUP(D1,1:2,"男":"女")

 4. =CHOOSE(D1,"男","女")


正解はモーグブログにて発表中です。ご確認ください!
⇒ http://www.moug.net/ads/ofp_vba.html

モーグブログ内では、回答だけでなく簡単な解説をご紹介しています!
ぜひご覧くださいね。

***************************************************************************
 ★モーグフリーソフト紹介
***************************************************************************
モーグのフリーソフトコーナーで公開しているソフトをご紹介します。

・Excel Pro 工程表 Ver.4.01
 http://blog.moug.net/archives/51408685.html
 
・Access DE 出張精算 EX Ver.1.05
 http://blog.moug.net/archives/51335117.html
 
皆さんの気になるフリーソフトは見つかりましたか?
モーグのフリーソフトコーナーでは「財務・会計管理」「アドイン」
「ビジネス・業務用」「ユーティリティー」「家庭向け・アミューズメント」など
多種多様な、お役立ちフリーソフトが満載です!
いますぐ、モーグフリーソフトコーナーへアクセスを!

モーグフリーソフトコーナーへ ⇒ http://www.moug.net/freesoft/

***************************************************************************
 ★田中亨の Excel VBA テクニック
***************************************************************************
 『田中亨の Excel VBA テクニック集』。数々のExcel著書で有名なMicrosoft MVP
 保有者 田中亨さん がオフパー読者のために、より実践に即した、今すぐ使える
 テクニックをあなたに伝授!  これは毎週目が離せない!!
---------------------------------------------------------------------------
■列挙型変数を使う(Excel 97/2000/2002/2003/2007)

セルの文字色を赤色に設定するには次のようにします。

Sub Sample1()
  ActiveCell.Font.ColorIndex = 3
End Sub   

ColorIndexプロパティに設定した「3」は、色パレットの番号です。
標準のExcelでは、色パレットの3番に赤色が設定されています。
ちなみに、よく使う色は、次のような色番号が設定されています。

自動…0
黒…1
白…2
赤…3
緑…4
黄…5
青…6

赤にするときは「3」、青にするときは「6」、黄にするときは「5」…と、
すべての色番号を暗記しておける記憶力のよい人ならともかく、
そうでない私などは、いつも「あれ?紫は何番だったかな?」と悩みます。
わからない色番号は、実際の操作をマクロ記録すればいいのですが、
しめ切りに追われているときなどは、その時間すら惜しく感じるものです。

そこで、次のように、色番号を定数として登録することがあります。

Const myRed As Long = 3
Const myGreen As Long = 4
Const myYellow As Long = 5
Const myBlue As Long = 6

Sub Sample2()
  ActiveCell.Font.ColorIndex = myRed
End Sub   

定数をモジュールレベルで宣言しておけば、どのプロシージャでも使えます。
これで作業がだいぶ楽になるのですが、どんな定数を宣言したかを覚えて
おかなければなりません。
何かもっと、リストから選択できるような仕組みはできないでしょうか。

そんなとき役立つのが「列挙型変数」です。
定数宣言のかわりに、宣言セクションで次のように定義します。

Enum FontColor
  Red = 3
  Green = 4
  Yellow = 5
  Blue = 6
End Enum   

Sub Sample3()
  ActiveCell.Font.ColorIndex = FontColor.Red
End Sub   

コードだけを見ると、あまり違いがないように感じるかも知れませんが、
ぜひ、上のコードを実際に入力してみてください。
ColorIndexプロパティに設定する値を、「FontColor.」まで入力すると
列挙型変数として設定した"Red"や"Blue"がリストで表示されます。
そのまま矢印キーで選択してTabキーを押せば、入力の完了です。
これなら、忘れることも、間違えることもありませんね。

列挙型変数には、長整数型の値しか設定できません。
また、列挙型変数は、モジュールレベルでしか定義できませんので、
プロシージャ内で定義することはできません。

列挙型変数は、先頭の要素で設定する値を省略すると、0が設定されたものと認識
します。
2番目以降の要素で設定する値を省略すると、1つ上の値に「+1」した数値が
設定されたものと認識されます。したがって、

自動…0
黒…1
白…2
赤…3
緑…4
黄…5
青…6

は次のように記述することも可能です。

Enum FontColor
  Normal
  Black
  White
  Red
  Green
  Yellow
  Blue
End Enum   

可能ですが、上で書いたような列挙型変数の特徴を知らない人にとっては、
何が定義されているかが理解できません。
そのような可読性の劣るコードは、ビジネスの現場で使うべきではありません。
列挙型変数の値は、必ず定義するようにしましょう。


***************************************************************************
 ★編集後記
***************************************************************************
 最近、とあるゲームを購入し、毎日運動をせっせとしているのですが、
 その中で頭の体操として暗算の結果を腰を振って回答するゲームがあるのですが、
 暗算が全然できない自分に愕然としています。。。
 以前は脳トレを毎日やって、かなり暗算もできたはずなのですが…。
 身体だけじゃなくて、脳も鍛えないと駄目ですね(泣)
 では、頭の体操です!「土」「日」「寸」の3文字を組み合わせて1つの漢字に
 してみてください!15秒以内にわかればきっとまだまだ大丈夫!
    正解は、スタッフブログへGo!!⇒ http://www.moug.net/ads/ofp_staff.html
                    モーグ メールマガジン編集部(よ)

■広告募集について
 このメールマガジンに広告を出してみませんか?
 広告のお問い合わせは ad@odyssey-com.co.jp まで、お気軽にどうぞ。

◆━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◆
◎このメールマガジンは「まぐまぐ」、「melma!」で配送しております。
◎Office & VBA パーフェクトマスター(オフパー)の購読を中止なさる方は、
下記URLで手続きをお願いします。
 ●まぐまぐ ⇒ http://www.kaijo.com/
 ●melma! ⇒ http://melma.com/contents/taikai/

◎掲載されている会社名・製品名は、各社の登録商標または商標です。
 Office & VBA パーフェクトマスター(オフパー)に掲載された記事及び
そのリンク先のコンテンツを許可なく転載することを禁じます。
 執筆・編集者および発行者は掲載された内容に起因するトラブルには
一切関与いたしませんので、あらかじめご了承ください。

     ‥‥……━━━━━━━━━━━━━━━━━━━……‥‥

執筆・編集 株式会社オデッセイ コミュニケーションズ
モーグメールマガジン編集部

                  問い合わせ先 moug@odyssey-com.co.jp
                     モーグ http://www.moug.net/
   株式会社オデッセイ コミュニケーションズ http://www.odyssey-com.co.jp
   
◆━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◆
最新号をメルマガでお届け
登録 解除

規約に同意して

登録した方には、まぐまぐの公式メルマガ(無料)をお届けします。
上へ戻る