ExcelVBAを実務で使い倒す技術

概 要

苦労してExcelVBAの基礎を学んだのに、期待したほど仕事が楽にならない。実務で使っているうちに、気がついたらVBAが重荷になってきている。あなたは、そんな悩みをお持ちではないでしょうか。本書は、ExcelVBAを実務で使うことを前提に、現場で求められる知識と知恵を解説します。バグを素早く解決する、運用中のマクロを都度メンテナンスする、コードを継ぎ足して機能を足すテクニックなど、現場で必要なノウハウがわかります。

著者 高橋宣成
価格 本体1800円(税別)
ISBN 978-4-7980-4999-1
発売日 2017/4/20
判型 A5
ページ数 292
CD/DVD
ダウンロード
表紙イメージ
購入 アマゾンで購入する
楽天で購入する

※リンク先によっては、販売ページが用意されていないことがあります。あらかじめご了承ください。

新しいウィンドウで開く 書籍購入のご案内

サポート

サポート情報は以下からご参照下さい。

サポート情報へのリンク

目次

第1章 脱初級への第一歩は「道具であるVBE」を使いこなすことから

1-1 まず最初に必要なのは「楽をする」スキル

初級から抜け出せていない。中級レベルまでもう少し

「楽をするスキル」とは何か

真っ先に取り組むべきなのは「VBE」

1-2 今すぐに見直すべきVBEの設定とは

VBEの設定を甘く見てはいけない

楽にVBAを扱うには「見栄え」も大切

自動構文チェックの無効化

変数の宣言を強制する理由

1-3 コメントブロックのアクセスキーを設定する

コメント機能は簡単に操作できるようにする

VBEで独自のアクセスキーを設定する

1-4 自動メンバー表示で「打たずに打つ」

タイプミスを0%にすることは不可能

うろ覚えでも素早くミスなく入力できる

自動メンバー表示が使えるようにコードを書く

1-5 マスターしておくべきVBEのショートカットキー

コードの量が増えてもカーソル移動に時間をかけない

変数またはプロシージャの定義の表示

第2章 イミディエイトウィンドウの神髄

2-1 イミディエイトウィンドウの役割を再定義する

入力画面としてのイミディエイトウィンドウの役割

イミディエイトウィンドウのショートカットキー

2-2 変数・プロパティの値とステートメントの結果を調べる

変数やプロパティの値を調べる

ステートメントとその結果を評価する

2-3 イミディエイトウィンドウからプロシージャを実行する

イミディエイトウィンドウでのプロシージャ実行

引数を渡してプロシージャを実行する

Functionプロシージャを検証する

第3章 バグを制するものはVBAを制する

3-1 なぜ、初級者はデバッグ作業で時間を浪費するのか

エラーに浪費している時間を限りなくゼロにする

エラーが解決できない主要因は「情報不足」

3-2 エラーメッセージは情報の宝庫、エラーは成長の糧

エラーをわざと発生させて「敵を知る」

ユーザー入力の内容によって発生するエラー

3-3 3種類のエラーと、よく見かけるエラーメッセージ

VBAで発生するエラーには3つの種類がある

コンパイルエラーと、そのよくあるパターン

実行時エラーと、そのよくあるパターン

3-4 ステップ実行で手がかりを得る

エラーの原因も発生箇所も分からないという例

ステップ実行とローカルウィンドウ

3-5 ブレークポイントを設定して手がかりを得る

ブレークポイントで処理を中断する

中断ポイントで変数・プロパティの値を調べる方法

第4章 システムの成功と失敗の分かれ目は設計にあり

4-1 成功のポイントはPCを活躍させること

全ての要望を取り入れれば良いわけではない

PCの力を最大限に借りる

4-2 インプット・プロセス・アウトプット

システムはIPOの組み合わせでできている

インプットとアウトプットがExcelである

システムが大きすぎる場合は小さなIPOに細分化する

4-3 PCにやさしいフォーマットとは

フォーマットがプロセスの複雑さを左右する

PCが得意なフォーマットはテーブル形式

人にやさしい形式と、PCにやさしい形式

4-4 IDとマスタ・入力規則で表記の揺らぎを防ぐ

表記の揺らぎはPCの天敵

IDとマスタにより表記の揺らぎを防ぐ

入力規則で指定した値のみ許容する

第5章 できる担当者のコーディングは発想からして違う

5-1 脱初級を阻害するコーディングのクセを取り除く

初級者に染みつきやすいコーディングのクセとは

正しく理解してコーディングをするには設計が不可欠

「コードを理解する」を定義する

5-2 VBAコードにする前に、日本語でプロセスを分解する

コーディングは「分解」と「翻訳」である

プロセスの分解は日本語で

プログラムの構成要素は3種類しかない

5-3 欲しい情報を効果的に調べ上げる高速検索術

情報源の特性を知り、効果的に情報を手に入れる

検索内容によって検索方法を使い分ける

特定のサイトにしぼってGoogle検索をする

VBA検索に役立つサイト

5-4 お決まりフレーズはストック&ペースト

マクロ記録と他人のコードはおすすめしない

自分のコードを資産として再利用する

ストックコード集

5-5 小さく細かくコーディングとテストを進める

コードを書いた端からテストを進めるべき理由

テストの範囲をできる限り絞る

まずテスト用のコードDebug.Printで出力する

第6章 リーダブルコードでVBAを資産化する

6-1 なぜ、リーダブルコードが必要なのか

優れたコードとは何か

書いたコードを負債とせず資産にすべき

6-2 読みやすいコードとは何か

「リーダブルコード」を定義する

シンプルなコードは読みやすい

「単位」に対して適切なボリューム

コードが持つ情報の密度を高める

6-3 ブロックとインデントでコードのフォルムを美しく

フォルムに情報を持たせる

Withでコードを美しく書く

ネストはできる限り浅く

縦のラインを揃えて書く

6-4 プロシージャはどのように分割すべきか

プロシージャの基本単位は「1画面」

プロシージャを分割する条件

6-5 変数はどこでどのように宣言すべきか

その変数は使うべきかどうか

暗黙の型は避ける

変数のスコープを絞る

6-6 ネーミングが情報の密度を上げる

変数やプロシージャに意味を持たせる

キャメル記法とスネーク記法

Boolean型を表現する名前

短いネーミングと日本語のネーミング

6-7 コードにない情報をコメントで伝える

コードにない情報を最小限の文字数で伝える

どのようなコメントを残すべきか

プロシージャとその構造を表すコメント

6-8 徹底してコードに一貫性を持たせる

条件式の左辺と右辺の配置

Boolean型の条件式

一貫性のある書き方を徹底する

第7章 「変化」への耐久性を持たせるためのVBAの作法

7-1 「変化」は必ずやってきてVBAを劣化させる

ちょっとした改修でも高くつくことがある

「変化」はシステムの劣化を招く

未来の変化に備える2つのアプローチ

7-2 同じコードを書いてはいけない

繰り返しで同じコードを1行にまとめる

同じ処理をプロシージャ化する

7-3 定数・列挙型でマジックナンバーを避ける

マジックナンバーには定数を使う

文字列の定数化で楽にVBAの運用をする

列挙型でグループにまとめて数値を割り当てる

7-4 ユーザー操作によるシステム干渉に耐えるVBAを作る

ExcelVBAでのユーザー操作による干渉

行数、列数の変更への対策

シートの変更への対策

ワークブックとシートを明示する

7-5 変化する「集合」にはコレクションを使う

コレクションとFor Each文

独自のコレクションを作る

7-6 膨らんでいくデータ量をどう取り扱えば良いのか

データ量も意識すべき「変化」である

データ量を抑えるためにすべきこと

7-7 マクロの実行時間を短縮するためのテクニック

繰り返しに注目して計算回数を減らす

マクロ実行時の自動計算をオフにする

画面表示の更新とイベントの発生をオフにする

セル範囲を配列に格納してから計算をする

第8章 VBAは個人作業のみならず「チーム」にも革命をもたらす

8-1 VBAはチームの資産にするべき

あなたのチームを最大に苦しめ得るリスク

VBAをチームで維持管理するための2つの方針

8-2 チームで情報を蓄積・共有して、強力なライブラリを作る

チームの情報を蓄積して共有する

更新性の高さで情報管理に濃淡をつける

階層的に情報をリンクでつなぐ

集合知はチームの強力な武器になる

8-3 Gitでソースコードとそのバージョンを楽に管理する

ファイル名でのバージョン管理の限界

Gitバージョン管理でできること

Gitを使ってバージョン管理を複数人で共有する

8-4 リファクタリングでチームのコードに一貫性を持たせる

チームでコーディングルールを統一する

リファクタリングとは

安全にリファクタリングを進める

8-5 技術ブログで情報を公開することで、新たな価値を生み出す

蓄積した情報を世界に向けて発信する

情報を公開することではじめて得られるもの

PR

秀和システム