Excel計算表の帳票入力・転記で楽する【マクロ】技(2)

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

ダウンロード

●ダウンロードを行う前に確認していただきたいこと

本データの利用につきましては,通常の使用状態においては何の問題も発生しないことを確認しておりますが,万が一障害が発生し,その結果いかなる損害が発生したとしても,弊社および著者は何ら責任を負うものではありませんし,一切の保証をいたしかねます。必ずご自身の責任においてご利用ください。

本データは著作権法上の保護を受けています。収録されているファイルの一部あるいは全部について,いかなる方法においても無断で複写,複製,再配布することは禁じられています。

以上のことをご確認,ご了承の上,データをご利用願います。

●データのダウンロードと,収録内容について

このホームページから本書の例題のサンプルファイルをダウンロードできます。ファイルサイズは,約1.3MB(Excel 2000用は約947KB)で,LZH形式で圧縮してあります。

収録されているのは,『Excel計算表の帳票入力・転記で楽する【マクロ】技?』で紹介しているExcelのブックファイルです。

それ以外のファイル(たとえば Excel 2003 など)は含まれておりません。

【Excel 2000を使用している場合】

サンプルファイルをダウンロードする場合は,ここをクリック → ダウンロード

【Excel 2002/2003を使用している場合】

サンプルファイルをダウンロードする場合は,ここをクリック → ダウンロード

※ダウンロードファイルに修正がありました(2005年6月22日より修正版を配布)

●ファイルの解凍について

ダウンロードしたら,ファイルの「解凍」という作業が必要です。

ダウンロードしたサンプルファイルを使用するには,「Lhasa」や「+Lhaca」などのLZHファイルを扱うユーティリティソフトで,「解凍」という作業を行わなければなりません。

「Lhasa」などの解凍ユーティリティソフトは,Vector(http://www.vector.co.jp)や,窓の杜(http://www.forest.impress.co.jp)などから,ダウンロードすることができます。

圧縮ファイルの解凍方法については,これらのユーティリティソフトに添付されている説明ファイルをお読みください。

●解凍したファイルについて

ダウンロードしたファイルを解凍すると,Excel 2000の場合は「Ex-Macro1」というフォルダが,Excel 2002/2003の場合は「Ex-Macro2」というフォルダが作成されます。

このフォルダの中に,本書の項目番号ごとのフォルダがあり,それぞれのフォルダ内にその項目で紹介しているサンプルファイルが収録されています。

また,最終的な完成形のサンプルファイルは,「完成品」フォルダに収録されています。

補足情報

本書の掲載内容に関連して,書籍刊行後にExcelで以下の現象が発生することがわかりました。2005年6月22日より,この問題を修正したサンプルファイルのダウンロードサービスを行っています。ご迷惑をおかけして申し訳ありません。

●該当箇所

p.26・27 「1-5 アクティブセルの移動を入力するセルだけに限定する」

●問題点

たとえば,サンプルファイルの「完成品」フォルダ内にある「売上データ.xls」の保護を解除したあと,再度シートを保護して保存すると,次にこのブックを開いたとき,シートが保護されているにもかかわらず「ロックされたセル範囲」が選択できてしまう。

●問題が生じた原因

Excel2002/2003では,[ツール(T)]メニューの[保護(P)]から[シートの保護(P)]を選択すると,

[シートの保護]ダイアログが表示されます。

本書27ページのように,ここで「許可する操作」(27ページの操作?)にチェックを付けて[OK]ボタンをクリックしますが,その後,保護を一度解除すると,この情報が次のように動作することがわかりました。

1. 保護を一度解除しても,「許可する操作」にチェックを付けた情報は保持されます。

そのため,再度保護をかけるときには,ダイアログの[OK]ボタンをクリックするだけで

大丈夫です(チェックしなおす必要はありません)。

また,シートを保護するマクロを記述する際にも,

  Sheets("販売データ").Protect

  Sheets("販売データ").EnableSelection = xlUnlockedCells

のようにEnableSelectionを記述しなくても大丈夫です。

2. シートを保護し続けたとき(解除を一度もしなかったとき)は,保存や開くなどの

操作をしても,「許可する操作」にチェックを付けた情報は保持されます。

ブックを保存しても,「許可する操作」の情報も正しく保存されます。

3. ただし,保護を一度解除したあと,再度シートに保護をかけてブックを保存すると,

「許可する操作」の情報が欠落した状態で保存されてしまうようです。

上記1にあるように,保存をしても,現在開いているブックは情報が保持されているため

何の問題もありませんが,保存されたブックでは「許可する操作」の情報が

欠落しているので,このブックをあらためて開きなおすと,シートが

保護されているにもかかわらず「ロックされたセル範囲」が選択できてしまいます。

●この現象に対する対処

本書27ページの「注意」に記載されている手順?〜?の操作を行ってください。

シートの保護に関する「許可する操作」の指定は,Excel 2002からの新機能なので,その機能を持たないExcel 2000向けの操作が,上記の問題を対処するのにも有効です。

ここでは,リストから「Workbook」の「Open」を選んでいますが,これは,本書43ページの「Workbook_Open」にあるように,ブックを開いた直後にマクロを自動実行させたいときに利用します。このマクロは,「許可する操作」の情報が欠落した形で保存されているので,ブックを開いたときに,セルの選択の動作を非保護セルに限定するように設定します(EnableSelection = xlUnlockedCells)。