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

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

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

規約に同意して

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

【オフパー】Vol.766 10日分増量でケフィアを買いたい女性の方へ。

この記事を取り寄せる

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

【目次】

★ お知らせ
   10日分増量でケフィアを買いたい女性の方へ。

★ Office 製品共通一般機能テクニック
   〜 よく使用する文書パーツを「クイックパーツ」に登録する

★ 一問多答!!

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

★ 田中亨の ExcelVBAテクニック
   〜 固定長データをSplit関数で区切る

★ 編集後記


****************************************************************************
 ★お知らせ
****************************************************************************

 ┏━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┳━┓
 ┃★ 10日 分 増 量 で ケ フ ィ ア を 買 い た い 女 性 の 方 へ★ ┃
 ┗━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━┻━┛

「肉や油っこいものが好き」「最近、ストレスを感じることが多い」「美容のために
何かしたいけど、続かなくて…」あなたはこんな経験、ありませんか?

食事や生活習慣が原因で、体のリズムが乱れている女性が増えているそうです。
解消するために、栄養バランスや運動、マッサージなどを試してみても、なかなか
長続きしないもの…。

■今話題のケフィアが10日間分増量で購入できるチャンスです!
ケフィアはヨーグルトとは違う共生発酵。複数の酵母と乳酸菌のチカラが、
人間には作れない絶妙のバランスで働きかけます。

今ならこのメールをご覧の方先着300名様に限り、なんと10日分の増量サービス中!
これならケフィアのチカラを、より深く実感していただけるハズ…。
さらにケフィアのことが良くわかる「やずやの千年ケフィア読本」もプレゼント!

先着300名様限りのチャンスなので、急いで応募してくださいね♪

☆やずやの千年ケフィア━━━━━━━━━━━━━━━━━━━━━━☆
【期間限定】10日分増量のお申込みはこちら▼▽▼
 http://www.moug.net/ads/office_perfect3.html


****************************************************************************
 ★Office 製品共通一般機能テクニック     
****************************************************************************
<Contents>
よく使用する文書パーツを「クイックパーツ」に登録する
(Word 2007のみ) 

●概要●
よく使うロゴや署名をクイックパーツに登録しておくと、クリックするだけで
文書内にすぐ挿入することができます。

●詳細●
(1)登録したいパーツを選択し、[挿入]タブの[テキスト]で[クイックパーツ]を
クリック

(2)[選択範囲をクイックパーツ ギャラリーに保存]をクリック

(3)[新しい文書パーツの作成]ダイアログボックスが表示されるので、名前などの
必要項目を入力し[OK]をクリック

(4)文書に登録したクイックパーツを挿入するには、[挿入]タブの[テキスト]で
[クイックパーツ]をクリック

(5)プレビューが表示されるので、プレビューをクリックするとクイックパーツが
挿入される

●補足●
クイックパーツを削除、変更したい場合は、[挿入]-[テキスト]タブ-[クイックパーツ]
を選択します。
プレビューで表紙されたパーツを右クリックし、[整理と削除]を選択すると、登録した
パーツの削除や変更ができます。


■Word一般機能の図とオブジェクトに関するテクニックはこちらから
⇒ http://www.moug.net/tech/woopr/0081.htm


****************************************************************************
 ★一問多答!!
****************************************************************************
勉強はなかなか一人では壁に当たって進まないもの。そんな悩みを解決するのが
我等がモーグ。同じ対象を見ても違う感想があるように、いろいろな角度で自分に
合った回答をモーグで見つけてください。
VBAエキスパートの例題を使って、モーグの利用法をご案内します。
----------------------------------------------------------------------------
例題)セルA1に赤色の太字で「モーグ」と入力する「Sample1」プロシージャがある。
   これを可読性を高めるために「Sample2」プロシージャのように書き変えた。
   このとき【 1 】に当てはまるものとして、正しいものを1つ選びなさい。
   
  Sub Sample1()
      Range("A1").Value = "モーグ"
      Range("A1").Font.Color = vbRed
      Range("A1").Font.Bold = True
  End Sub
  
    ↓

  Sub Sample2()
      【 1 】 Range("A1")
          .Value = "モーグ"
          .Font.Color = vbRed
          .Font.Bold = True
      End 【 1 】
  End Sub
  
 1. About

 2. With 

 3. Each

 4. By


いかがですか?モーグのサイトで、検索・掲示板検索を利用してあなたなりの
正解を探してみましょう。

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


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

・企業用カレンダー作成 (V3.030)
 http://blog.moug.net/archives/51408557.html

・稼働日計算関数(アドイン)(Ver 1.050)
 http://blog.moug.net/archives/51408558.html
 
皆さんの気になるフリーソフトは見つかりましたか?
モーグのフリーソフトコーナーでは「財務・会計管理」「アドイン」
「ビジネス・業務用」「ユーティリティー」「家庭向け・アミューズメント」など
多種多様な、お役立ちフリーソフトが満載です!
いますぐ、モーグフリーソフトコーナーへアクセスを!

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


****************************************************************************
 ★田中亨の ExcelVBAテクニック
****************************************************************************
『田中亨の ExcelVBAテクニック集』。数々のExcel著書で有名なMicrosoft MVP
保有者 田中亨さん がオフパー読者のために、より実践に即した、今すぐ使える
テクニックをご紹介!!
----------------------------------------------------------------------------
■固定長データをSplit関数で区切る(Excel 2000/2002/2003/2007)

Excelで操作するデータがテキスト形式で提供されることは、よくあるケースです。
テキスト形式のデータとして多いのは「CSV形式」でしょうか。

1001,大久保,2008/9/1,3690,商品A
1002,山田,2008/10/25,105000,商品B-1
 :

のように、各データがカンマで区切られているのがCSV形式です。
これをExcelのシートに取り込むには、次のようにします。

Sub Sample1()
    Dim buf As String, cnt As Long
    Open "C:\Sample.csv" For Input As #1
        Do Until EOF(1)
            Line Input #1, buf
            cnt = cnt + 1
            Cells(cnt, 1).Resize(1, 5) = Split(buf, ",")
        Loop
    Close #1   
End Sub

Split(buf, ",") は、変数bufに格納されている1行分のデータから、
各要素をカンマで区切った配列として返します。

さて、CSV形式のように、要素が何かで区切られた形式であれば簡単ですが、
固定長形式のデータだった場合はどうでしょう。
固定長データとは、

1001  大久保  2008/9/1    3690   商品A   
1002  山田    2008/10/25  105000 商品B-1 
 :

のように、各要素の文字数(バイト数)があらかじめ決められていて、
その文字数に満たない部分にスペースが埋められているような形式です。

もちろん、あらかじめ各要素の文字数はわかっているでしょうから、
Mid関数などを使って、区切る位置と文字数を指定すれば分割は可能です。
しかし、位置や文字数を正確に指定しなければなりませんし、
各要素の文字数が変更になると、すべてを修正しなければなりません。
何か簡単に取り込む方法はないのでしょうか。

固定長データの場合、各要素はスペースで区切られています。
しかし、文字数によってスペースの数が変化します。これが悩みの種です。
であれば、スペースの数を統一してしまいましょう。
各要素が「1つのスペース」で区切られているのなら、先のSplit関数を使えます。
そこで、すべての「2つのスペース」を「1つのスペース」に置換します。

Sub Sample2()
    Dim buf As String, cnt As Long
    Open "C:\Sample.dat" For Input As #1
        Do Until EOF(1)
            Line Input #1, buf
            Do While InStr(buf, "  ") > 0
                buf = Replace(buf, "  ", " ")
            Loop
            buf = Trim(buf)
            cnt = cnt + 1
            Cells(cnt, 1).Resize(1, 5) = Split(buf, " ")
        Loop
    Close #1   
End Sub

「2つのスペース」を「1つのスペース」に置換しているのが

buf = Replace(buf, "  ", " ")

です。
この作業を「2つのスペース」がなくなるまで繰り返します。

Do While InStr(buf, "  ") > 0

最後に、データの先頭と末尾に残った余分なスペースを

buf = Trim(buf)

と、Trim関数で取り除いています。
最後のSplit関数で区切り文字にスペース(" ")を指定している点に留意してください。

****************************************************************************
 ★編集後記
****************************************************************************
 先週の山寺に引き続き、足を延ばして『松島』まで行ってまいりました。
 島巡りの遊覧船にも乗り、のんびりとした時間を過ごすことができました。
 船内ではカモメの餌が販売され、とても間近でカモメを見ることができます♪
 さて、船内で販売されていたカモメの餌は何だったでしょうか?
 正解はスタッフブログでご紹介しています♪
                スタッフブログへGo!!⇒ http://blog.moug.net/
                     モーグ メールマガジン編集部(よ)

■登録解除
 メルマガ配信の登録解除を希望される方は、http://www.moug.net/よりログイン
 し、会員情報変更よりメールマガジン配信を「希望しない」にご変更ください。

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

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

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

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

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

                  問い合わせ先 moug@odyssey-com.co.jp
                     モーグ http://www.moug.net/
   株式会社オデッセイ コミュニケーションズ http://www.odyssey-com.co.jp
   
◆━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◆

この記事を取り寄せる
最新号をメルマガでお届け
登録 解除

規約に同意して

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