Excel VBA プログラミング作法 パーフェクトマスター

概 要

Excel VBAは、Excelの操作さえわかっていれば、とっつきやすいプログラミング言語です。もちろんプログラミング言語ですから覚えることもたくさんありますが、VBAで業務を自動化できるようになるとあなたの生産性がグッと高まります。本書は、Excel作業の効率化と自動化のノウハウを、実習サンプルを動かしつつ、ソースコードを読み解くことで学ぶExcel VBAの解説書です。実務に役立つ全手法と構文をわかりやすく学べます。

著者 若狭直道&アンカー・プロ
価格 本体2300円(税別)
ISBN 978-4-7980-5413-1
発売日 2018/3/9
判型 B5変
ページ数 448
CD/DVD
ダウンロード
表紙イメージ
購入 アマゾンで購入する
楽天で購入する

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

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

サポート

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

サポート情報へのリンク

目次

■Chapter1 マクロは何のためにあるのか?

1.1 いきなり“マクロ”といわれても

1.1.1 生産性を上げるために業務の一部を自動化しよう

マクロは業務を自動化する

1.1.2 Excelを自動化させるのがマクロ

マクロとは

Hint ユーザー定義関数もマクロでつくれる

1.2 Excel操作を記録すれば、それがマクロ

1.2.1 魔方陣の作成過程をマクロで記録する

魔方陣

Hint 開発タブの表示

Excelの操作を記録するには

Hint ステータスバーのマクロボタン

1.2.2 マクロに魔方陣を作らせる

記録したマクロを実行する

Memo マクロの実行時、アクティブセルはどこにすればよいのか

Memo マクロ有効ブックを開くとき

1.2.3 マクロを保存する

マクロを保存するには

1.3 記録マクロを読み解く

1.3.1 マクロの編集

VBE

Memo マクロ名の規則

Memo マクロ記録ではできないこと

1.3.2 マクロを構成している基本要素

プロシージャ

モジュール

Memo サブルーチン

Onepoint フォームモジュールとクラスモジュール

コメント

Tips 複数の行をまとめてコメント行にするには

1.3.3 オブジェクトの値とふるまい

オブジェクト

Onepoint オブジェクトの階層構造

メソッドその1

プロパティ

Tips Sheet2を開くと自動的に魔方陣が作成されるようにするには

1.3.4 魔方陣作成マクロを読み解く

Hint マクロ記録されたソースコードのクセ

1.4 ビンゴカード作成マクロをつくる

1.4.1 ビンゴカード作成の記録マクロ

ビンゴカードを作成する作業をマクロに記録する

1.4.2 ビンゴカード作成マクロを読み解く

Hint セキュリティに関する通知を非表示にするには

メソッドその2

Hint メソッド変数の値は列挙から選択できる

1.4.3 ビンゴカード作成マクロを改造する

記録マクロから不要なコードを除く

R1C1形式からA1形式への変更

Memo A1形式とR1C1形式

マクロ記録のクセ直し

繰り返し処理

Hint For Each...Nextステートメント

ビンゴカード作成マクロの繰り返し処理改造

Hint CellsとRangeの使い分け

Tips Cellプロパティでセル番地を使う

第1章のまとめ

■Chapter2 Excel VBAはデスクワークを楽にする

2.1 セルオブジェクトの操作を覚えよう

2.1.1 VBAのオブジェクト

オブジェクトとコレクション

2.1.2 VBAオブジェクトへのアクセスと操作

VBAオブジェクトやコレクションの操作

Tips セルを追加するUnionメソッド

Memo コレクション名とオブジェクト名

Memo 選択されているセルを知る

2.1.3 セルやワークシート操作の定番コード

セルの選択

Tips セルを削除する

Tips セルを挿入する

Hint アクティブなオブジェクトの選択

行や列の選択

Memo SheetとWorksheetsの違い

ブックやシートの操作

Memo シートの選択とシートのアクティブ化の違い

Hint シート数を知る

Hint シート名を変更する

2.2 日報をデータベース化する

2.2.1 日報データを蓄積するマクロを作る

日報記録ワークのサンプル

日報データを別シートに複製する記録マクロ

Memo マクロの実行がエラーになったら

日報データ蓄積マクロの構成

日報データ蓄積マクロへの課題

データの最後までの説範囲を選択する方法

Hint OffsetとResize

Hint 引数名は省略できる

Tips 前半部のソースコードだけを実行するには

行数分だけ貼り付けを繰り返す方法

Memo RowsとColumns

2.2.2 コーディングの原則

見やすくてわかりやすいコーディング

2.2.3 変数とデータ型

変数の宣言

Hint 完成したプログラムはファイル名で管理

Tips 変数を宣言しないと簡単なバグも見落とす

変数名の付け方のルール

Hint インデント下げの文字数を変更するには

Hint 変数の寿命と静的変数

第2章のまとめ

■Chapter3 Excel VBAで仕事の効率を上げよう

3.1 ユーザーフォームから日報を入力する

3.1.1 ユーザーフォームとコントロールの基本

簡単なユーザーフォームを作る

Hint ユーザーフォームを表示するためのメソッド

Memo クリックするとテキストボックスのデータがワークシートに入力されるコード

Memo イベントプロシージャ

Hint Excelでマクロを実行するショートカットキー

3.1.2 ユーザーフォームの設計

日報入力フォーム

日報入力フォームの制作

コントロールオブジェクトの設定

Hint ソースコードに記述したリストを選択肢に使うには

Tips セルの背景色を指定する

3.1.3 ユーザーフォーム表示ボタンの設置

ワークシートにコマンドボタンを設置する

コントロールの編集

3.2 日報ほ印刷・保存する

3.2.1 マクロでワークシートを印刷する

コマンドボタンで日報を印刷する

Memo PageSetupのプロパティ

Hint 印刷用紙サイズを設定する

3.2.2 マクロでワークブックを保存する

コマンドボタンでブックファイルを保存する

3.2.3 SummaryシートをCSVファイルで書き出す

CSVファイルで保存する

Memo 定数

3.3 月が替わるとシートが追加される

3.3.1 分岐処理を行う

Ifステートメント

3.3.2 更新していなければ上書き保存しない

Tips Ifステートメントの条件に「=Fales」を使わないようにするには

3.3.3 保存した/保存しなかったかをメッセージボックスに表示する

メッセージボックスに実行結果を表示する

Hint オブジェクト変数

3.3.4 月替わりにSummaryシートを分ける

今月の「月」とシート最後の「月」で分岐する195

Memo 比較演算子

Memo Withステートメント

3.3.5 Subプロシージャを分ける

月ごとに新規シートを追加する機能を別プロシージャにする

Hint どのような観点でプロシージャを分割するか

第3章のまとめ

■Chapter4 営業データをマクロで分析する

4.1 営業データをデバックする

4.1.1 データファイルを確認する

フォルダー内のファイル一覧を表示する

4.1.2 デバッグ

ステップイン

Tips イミディエイトウィンドウに直接、値を訊く

Hint マクロを途中で終了させるには

Hint VBEのショートカットキー

4.2 日報データを集計する

4.2.1 顧客ごとに営業データの売上を集計する

売上合計集計マクロ

Memo PasteSpecialメソッド

変数と配列

変数のスコープ

Hint 任意のプロシージャを実行するには

Memo 変数や配列の有効期間

4.2.2 売上高のグラフを挿入する

グラフ挿入の記録マクロ

グラフ付き売上合計集計マクロ

4.3 営業データから請求書をつくる

4.3.1 営業データをテーブルにして分析する

手動でフィルターを操ってデータを分析する

マクロで特定の営業データだけを表示する

4.3.2 請求書を作成する

マクロで請求書を作成する

4.3.3 請求書作成用ユーザーフォームをつくる

請求書作成ユーザーフォーム

4.3.4 同じ会社の請求書を作成しようとしたときのエラー処理

エラー

エラーを起こさないようにコードを改良する

エラートラップ

第4章のまとめ

■Chapter5 同窓会名簿を管理する

5.1 同窓会名簿を処理する

5.1.1 名簿のスペースを処理する

Memo データベースの構造

文字列の前後の空白を削除する

Hint Do While...Loopステータスで書き換える

スペースを全角に統一する

全角スペースを数える

全角スペースが2つ以上あるレコードを抽出する

Tips 処理時間を比べる

5.1.2 氏名にフリガナを振る

氏名にフリガナを振る方法

5.2 文字列操作関数で住所データを処理する

5.2.1 VBA関数

VBAの文字列操作関数

文字列処理に使えるおもなVBA関数

Memo 関数の引数について知るには

5.2.2 名簿の住所データを処理する

郵便番号を半角に統一する

住所の数字を全角に統一する

Tips Excel関数を簡単に使う方法

5.2.3 名簿の氏名や住所を分割数する

氏名を姓と名に分割する

住所の都道府県を切り分ける

5.3 郵便番号を住所に変換する

5.3.1 郵便番号APIを利用して住所を入力する

郵便番号を7桁の連続した数値に変換する

オブジェクト変数でAPIを使う

Memo オブジェクト変数を破棄する

5.4 学籍番号で名簿データを検索する

5.4.1 ユーザーが独自に定数を設定する

ユーザー定数の定義

5.4.2 多次元配列に名簿データを格納する

多次元配列を使って格納したデータを表示する

Hint 動的配列

Hint InputBoxメソッドの使い方

Memo 動的配列

5.4.3 ユーザー定義型で名簿データを定義する

ユーザー定義型で型の異なるデータを定義する

5.4.4 会費の未納金額を算出する関数を作る

ユーザー定義関数で未納金額を算出する

第5章のまとめ

■Chapter6 身体測定個票に図やグラフを載せる

6.1 データから身体測定の個票を作成する

6.1.1 帰納的にプログラミングを学習する

帰納的プログラミング学習メソッドとは

帰納的プログラミング学習メソッドの進め方

6.1.2 保健室マクロを解析する

保健室マクロの宣言セクション

保健室マクロの実行

サンプルコードをサブプロシージャに切り分ける

Memo 参照渡しと値渡し

6.1.3 身体測定個票のレイアウトデザインを変更する

VBAでワークシートのレイアウトデザインを変更する

Hint 標準フォントを調べる

Hint セルを結合させる

Hint 値がセルに表示しきれないとき

Hint セル内の文字に取り消し線や下線を引く

Hint 色の指定方法

Tips セルのColor値を知る方法

6.2 個票にグラフを載せる

6.2.1 マクロで棒グラフと折れ線グラフを作成する

グラフ作成のコードと実行結果の違い

どのようなグラフを作成したいのか

Memo グラフシートにグラフを作成する

身長データを棒グラフにする

身長データの折れ線グラフを作成する

6.2.2 個票にグラフを挿入する

身体測定の個票に個人と平均の2つのグラフを1つにして載せる

6.3 個票にイラストを描く

6.3.1 ヒト形シェイプを作画する

作画する図形の引数の値を知るには

マクロでヒト形図形を作画する

Memo ShapeオブジェクトとShapeRangeオブジェクト

ヒト形シェイプ作成マクロ

Memo Array関数

6.3.2 ヒト形シェイプを個票に貼り付ける

身長データに合わせたサイズでヒト形シェイプを表示する

Memo シェイプをパターンで塗る

6.3.3 個票に写真を挿入する

個票に貼った写真のスタイルを変更する

Memo ポイント、ピクセル、mm

第6章のまとめ

■Chapter7 みんなのためのマクロ

7.1 コントロールシートを付けて使いやすくする

7.1.1 マクロをシステム化する

システム化の特徴

マクロのシステム化

7.1.2 コントロールシートでメニューをつくる

コントロールシートの特徴

コントロールシートの作成と設定

コントロールシートのデザイン

7.2 利用者からの意見やアイデアを活かす

7.2.1 フィードバックを活用する

エラー内容を表示させる

7.2.2 マクロで手動操作機能を拡張する

ショートカットメニューにマクロを登録する

Tips FaceIDを表示するには

Hint ショートカットメニューをクリアするには

第7章のまとめ

PR

秀和システム