Excel 2000 はじめてのVBAプログラミング

[表紙]Excel 2000 はじめてのVBAプログラミング

紙版発売

B5変形判/588ページ

定価3,608円(本体3,280円+税10%)

ISBN 4-7741-1145-7

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

本書は「Excel97はじめてのVBAプログラミング」の改訂版で,はじめてVBAのプログラミングをする人を対象を対象にしています。他の本にない懇切丁寧な解説で,基礎の基礎から,初歩の初歩からプログラミングを学習していきます。

こんな方におすすめ

  • VBAプログラミングを使ってExcelを使いこなしたい方
  • Excel中級者

目次

本書の使用方法

    • 1 本書を利用するときの推奨設定
    • 2 付録CD-ROMの使い方

第1章 Excel VBAとマクロ

  • 1 マクロとVBAの概念について知りたい
    • 1・1 マクロとは何かを知りたい
    • 1・2 VBAとは何かを知りたい
    • 1・3 コードとは何かを知りたい
    • 1・4 マクロの利点とは
    • 1・5 マクロを作って実行するとはどういうことか
  • 2 作成したマクロの保存方法を知りたい
    • 2・1 Excelのマクロはファイル内に保存される
    • 2・2 Excelのマクロはファイル内のどこに保存されるか
    • 2・3 「個人用マクロブック」とは
    • 2・4 「個人用マクロブック」の特徴
    • 2・5 「作業中のブック」とは
    • 2・6 「新しいブック」とは
  • 3 マクロを実行するには
    • 3・1 通常のブックに保存されたマクロの場合
    • 3・2 個人用マクロブックに保存されたマクロの場合
  • 4 はじめてのプログラミングのための特別講義
    • 4・1 コードの右辺が先に実行され,右辺の内容が左辺の変数に代入される
    • 4・2 コードは左から右へ,上から下へ実行される

第2章 プログラムはどこに書けばよいのか

  • 1 VBAのプログラムについて
  • 2 Visual Basic Editorを表示するには
  • 3 コードはどこに書けばよいか
  • 4 コードウィンドウを表示するその他の方法

第3章 プロシージャとモジュールについて学ぼう

  • 1 VBAのプログラムは,どのようにして動いているのか
    • 1・1 マウスでクリックするとプログラムが実行される“わけ”
    • 1・2 ユーザーの操作はWindowsが監視する
    • 1・3 私たちプログラマのやるべきこととは
  • 2 プロシージャとモジュール
    • 2・1 プロシージャとは何か
    • 2・2 プロシージャボックスの意味
    • 2・3 モジュールとは何か
  • 3 プロシージャとモジュールの種類
    • 3・1 プロシージャの種類を知りたい
    • 3・2 モジュールの種類を知りたい
    • 3・3 イベントプロシージャについて
  • 4 プロシージャ名について
  • 5 Subプロシージャの構文を知りたい
  • 6 モジュールにSubプロシージャやFunctionプロシージャを追加する方法
    • 6・1 モジュールに直接プロシージャを追加するには
    • 6・2 [プロシージャの追加]ダイアログボックスを使ってプロシージャを追加するには
  • 7 プロシージャをほかプロシージャから呼び出す方法
    • 7・1 ほかのプロシージャから呼び出すプロシージャは標準モジュールに書く
    • 7・2 プロシージャの有効範囲について
    • 7・3 プロシージャをほかのプロシージャから呼び出すには

第4章 コードの基本的な動作と変数/定数

  • 1 変数や定数の意味を知りたい
    • 1・1 データはメモリに格納される
    • 1・2 データがメモリに格納される様子
    • 1・3 変数と定数の違い
    • 1・4 変数や定数を使う理由を知りたい
  • 2 変数や定数を使うための手順
    • 2・1 変数名や定数名の決め方
    • 2・2 変数や定数の宣言を書く場所について
    • 2・3 変数を宣言するための構文を知りたい
    • 2・4 定数を宣言するための構文を知りたい
  • 3 データ型について知りたい
    • 3・1 データ型はなぜ必要なのかを知りたい
    • 3・2 データ型の種類を知りたい
  • 4 各変数や定数の型の特徴と使い方を知りたい
    • 4・1 整数型(Integer)
    • 4・2 長整数型(Long)
    • 4・3 単精度浮動小数点型(Single)
    • 4・4 倍精度浮動小数点型(Double)
    • 4・5 通貨型(Currency)
    • 4・6 文字列型(String)
    • 4・7 日付型(Date)
    • 4・8 バイト型(Byte)
    • 4・9 ブール型(Boolean)
    • 4・10 オブジェクト型(Object)
    • 4・11 10進型(Decimal)
    • 4・12 バリアント型(Variant)
    • 4・13 ユーザー定義型
  • 5 プログラムの中で変数や定数が使える範囲について知りたい
    • 5・1 変数や定数は,使用できる範囲が決まっている
    • 5・2 ある特定のプロシージャ内だけで使用できる変数(最も狭い範囲)
    • 5・3 ある特定のモジュール内だけで使用できる変数(2番目に狭い範囲)
    • 5・4 同じブック内であればどのモジュールからでも使用できる変数(ブック全体)
    • 5・5 ほかのブックからでも使用できる変数(最も広い範囲)

第5章 関数の構造と使い方を覚えよう

  • 1 関数とは何かを知りたい
    • 1・1 VBAの関数とは何かを知りたい
    • 1・2 関数とは
  • 2 関数の動作をくわしく知りたい
    • 2・1 引数とは何かを知りたい
    • 2・2 関数のくわしい動作と戻り値について知りたい
  • 3 関数の具体的な使い方を知りたい
    • 3・1 関数を使用するには
    • 3・2 いろいろな関数の使い方を知るには
  • 4 ユーザーに情報を示したり,値を入力させるには
    • 4・1 MsgBox関数の機能と使い方を知ろう
    • 4・2 MsgBox関数の構文を知りたい
    • 4・3 MsgBox関数の引数についてくわしく知りたい
    • 4・4 MsgBox関数で複数行のメッセージを表示するには
    • 4・5 メッセージを変数に代入してMsgBox関数の引数として使う
    • 4・6 MsgBox関数の戻り値の使い方を知りたい
  • 5 InputBox関数の使い方を知りたい
    • 5・1 InputBox関数の書式
    • 5・2 InputBox関数の引数について知りたい
    • 5・3 InputBox関数の戻り値の使い方を知りたい
  • 6 引数についてくわしく知りたい
    • 6・1 引数とは何か
    • 6・2 引数の書き方
    • 6・3 参照渡しと値渡し
  • 7 Functionプロシージャの使い方を知りたい
    • 7・1 Functionプロシージャの構文について
    • 7・2 Functionプロシージャをほかのプロシージャから呼び出すには

第6章 オブジェクトの意味を学ぼう

  • 1 ワークシートやセルは,VBAでも“物”として扱う
    • 1・1 Excelを構成する部品
    • 1・2 ワークシートやセルは“仮想物体”
  • 2 オブジェクトの意味を知りたい
    • 2・1 オブジェクトとは何かを知りたい
    • 2・2 オブジェクトは階層構造で成り立つ
  • 3 コレクションの意味を知りたい
    • 3・1 コレクションとは同じオブジェクトが集まったもの
    • 3・2 オブジェクトの階層構造について知りたい
    • 3・3 コレクションの名前について知りたい
    • 3・4 オブジェクトをコードでどのように扱うかを知りたい
  • 4 プロパティの意味と使い方を知りたい
    • 4・1 プロパティとはオブジェクトの“特徴”のこと
    • 4・2 プロパティの書式を知りたい
    • 4・3 プロパティの種類を知りたい
    • 4・4 リファレンスを使ってプロパティを調べる方法を知りたい
    • 4・5 プロパティの値を変更するためのツールを知りたい
    • 4・6 プロパティを使ってオブジェクトを扱う方法を知りたい
    • 4・7 プロパティの値をプログラムの実行時に変更するには
  • 5 メソッドの意味と使い方を知りたい
    • 5・1 ワークシートやセルを操るときの“方法”をメソッドという
    • 5・2 メソッドをオンラインヘルプで調べるときの注意点を知りたい

第7章 Excelで起こった変化やユーザーの操作を検知するには

  • 1 イベントプロシージャ名の構造を知りたい
  • 2 イベントプロシージャ名とコードウィンドウの機能について
  • 3 コードウィンドウの機能―イベントプロシージャ以外のプロシージャの場合
  • 4 例題を使ってイベントを学ぼう
    • 4・1 イベントプロシージャの記述方法
    • 4・2 2つ以上のイベントプロシージャの記述方法
    • 4・3 セルの値が変更したら処理を行う(Changeイベント)
    • 4・4 Changeイベントには気をつけよう

第8章 VBAでセルやワークシートを扱うには

  • 1 VBAプログラムでブックを開くには
    • 1・1 ブックを開くときの基本的な構文を知りたい
    • 1・2 [ファイルを開く]ダイアログボックスを使ってファイル名を指定するには
  • 2 VBAプログラムでシートを扱うには
    • 2・1 “前から何番目のシートか”という情報でシートを指定するには
    • 2・2 ワークシートやグラフシートを名前で指定するには
  • 3 プログラムの中でセル範囲を扱うには
    • 3・1 Rangeプロパティを使ってセル範囲を表すオブジェクトを取得するには
    • 3・2 Cellsプロパティを使って単独のセルを表すオブジェクトを取得するには
  • 4 複数のセルを一度に指定するには
    • 4・1 Rangeプロパティの引数に「セル範囲を表す文字列」を与えてセル範囲を取得するには
    • 4・2 RangeプリパティとCellsプロパティを組み合わせるには
    • 4・3 Selectionプロパティを使用するには
  • 5 複数のセル範囲を一度に指定するには
    • 5・1 Rangeプロパティを使うには
    • 5・2 Unionメソッドを使うには
  • 6 プログラム中でワークシートの1列や1行を扱うには
    • 6・1 Rangeプロパティを使って1列や1行を扱うには
    • 6・2 RowsプロパティやColumnsプロパティを使って1列や1行を扱うには
  • 7 互いに連続している複数の列や行を同時に扱うには
    • 7・1 Rangeプロパティを使って互いに連続した複数の列や行を扱うには
    • 7・2 ColumnsプロパティやRowsプロパティを使って連続した複数列や行を扱うには
  • 8 互いに離れている複数の列や行を同時に選択したいとき
    • 8・1 互いに離れた複数の行を一度に扱うには
    • 8・2 互いに離れた複数の列を一度に表すには

第9章 条件式と演算子

  • 1 プログラムの実行順序について
    • 1・1 プログラムを実行するときの“順序”はとても重要
    • 1・2 繰り返し処理や分岐処理という機能
  • 2 制御構造の種類と働きを知りたい
    • 2・1 条件分岐や繰り返し処理に使用される制御構造の種類と働き
  • 3 条件式の意味と働きを知りたい
    • 3・1 条件式とは何かを知りたい
    • 3・2 “条件式が成り立つ”とはどういうことかを知りたい
    • 3・3 条件式が成り立ったことをステートメントはどうやって知るのか
  • 4 条件式で使う演算子について知りたい
    • 4・1 比較演算子の種類を知りたい
    • 4・2 Like演算子のパターンマッチング機能について知りたい
    • 4・3 論理演算子の種類を知りたい
  • 5 論理演算子とビット演算について学ぼう
    • 5・1 論理演算子の動作についての注意点を知りたい
    • 5・2 論理演算の実行の様子を知りたい
    • 5・3 10進法と2進法(ビット演算の基礎)
    • 5・4 ビット演算について
  • 6 条件式を書くときの注意事項を知りたい
    • 6・1 条件を使用するステートメントはバグが起こりやすいので要注意
    • 6・2 条件を考えるときには,データと変数の持つデータ型に気をつける
    • 6・3 「>」や「>=」などの記号の使い方に気をつける
  • 7 条件式の例題集

第10章 条件によってExcelの動作を変更するには

  • 1 条件の成立・不成立によってプログラムの動作を分岐するには
    • 1・1 Ifステートメントとは
    • 1・2 条件が成り立ったら,ステートメントを1つだけ実行させたいとき
    • 1・3 条件が成り立ったら,一度に複数のステートメントを実行したいとき
    • 1・4 条件の成立・不成立によって実行する内容を変えるには
  • 2 条件によって複数の処理に分岐したいときには
    • 2・1 ElseIfステートメントの構文を知りたい
    • 2・2 ElseIfステートメントの動作を知りたい
    • 2・3 Select Caseステートメントの構文を知りたい
    • 2・4 Select Caseステートメントの実行の様子を知りたい
    • 2・5 キーワードIsの使い方を知りたい
    • 2・6 キーワードToの使い方を知りたい
    • 2・7 Caseステートメントで複雑な条件を記述したい

第11章 条件が成り立っている間ずっと同じ動作を繰り返すには

  • 1 繰り返し制御について知りたい
  • 2 For・・・Nextステートメントについて知りたい
    • 2・1 For・・・Nextステートメントの構文を知りたい
    • 2・2 For・・・Nextステートメントブロックの全体の動作を知りたい
    • 2・3 カウンタ変数の変化の様子を知りたい
    • 2・4 For・・・Nextステートメントを使ってセルに数字を入れたい
    • 2・5 For・・・Nextステートメントを使うときの注意点を知りたい
    • 2・6 For・・・Nextステートメントブロックを途中で抜け出す方法を知りたい
  • 3 While・・・Wendステートメントについて知りたい
    • 3・1 While・・・Wendステートメントの構文を知りたい
    • 3・2 While・・・Wendステートメントの全体の動作を知りたい
  • 4 Do・・・Loopステートメントの使い方を知りたい
    • 4・1 Do・・・Loopステートメントの構文を知りたい
    • 4・2 Do・・・Loopステートメントの動作を知りたい
  • 5 ループ構造の中でループ構造を使うには

第12章 オブジェクトの効率的な処理方法と配列の考え方

  • 1 Withステートメントについて知りたい
    • 1・1 Withステートメントの構造を知りたい
    • 1・2 Withステートメントの入れ子構造について
  • 2 配列の概念について知りたい
    • 2・1 配列とは何か
    • 2・2 配列を使う利点
  • 3 配列の概要を知りたい
  • 4 静的配列の宣言方法を知りたい
    • 4・1 静的配列の宣言方法
    • 4・2 Dimステートメントについて
    • 4・3 配列の名前について
    • 4・4 配列の大きさについて
    • 4・5 配列のデータ型の指定について
  • 5 配列のインデックス番号についての注意
    • 5・1 インデックス番号は既定では“0”から始まることに注意しよう
    • 5・2 Option Baseステートメントを使ったインデックス番号の最小値の変更
    • 5・3 Toキーワードを使ったインデックス番号の最小値の変更
  • 6 動的配列の宣言方法を知りたい
  • 7 動的配列に大きさや次元を割り当てるには
    • 7・1 動的変数の大きさや次元を変更するには
    • 7・2 ReDimステートメントで配列の状態を変えたときのデータの状態について
    • 7・3 ReDimステートメントを使うときのその他の注意
  • 8 配列やセルを対象とした特殊なループ構造(For Each・・・Nextループ)
    • 8・1 For Each・・・Nextステートメントの構文を知りたい
    • 8・2 For Each・・・Nextステートメントを使う利点を知りたい
    • 8・3 For Each・・・Nextステートメントを使うときの注意点

第13章 Visual Basic Editorの使い方

  • 1 自分にはプログラムの才能がないとあきらめてしまいそうな方へ
    • 1・1 Visual Basic Editorの説明が後半にある理由
    • 1・2 初心者が開発環境を理解できないのは当然なのです
    • 1・3 Visual Basic Editorにおいてプログラムの書き始めに困った方へ
  • 2 Visual Basic Editorの構成
  • 3 VBEの起動方法を知りたい
    • 3・1 VBE起動と同時にワークシートのイベントプロシージャを表示させるには
    • 3・2 単にVisual Basic Editorを起動したいときの起動方法
  • 4 プログラムを記述する場所について
  • 5 ワークシートに対するイベントプロシージャの書き方
    • 5・1 Worksheet_Activateプロシージャについて
    • 5・2 Worksheet_BeforeDoubleClickプロシージャについて
    • 5・3 Worksheet_BeforeRightClickプロシージャについて
    • 5・4 Worksheet_Calculateプロシージャについて
    • 5・5 Worksheet_Changeプロシージャについて
    • 5・6 Worksheet_Deactivateプロシージャについて
    • 5・7 Worksheet_FollowHyperlinkプロシージャについて
    • 5・8 Worksheet_SelectionChangeプロシージャについて
  • 6 標準モジュールの追加方法を知りたい
  • 7 クラスモジュールについて知りたい
  • 8 オブジェクトブラウザについて知りたい
  • 9 編集ツールバーについて知りたい
    • 9・1 インデントについて知りたい
    • 9・2 ブレークポイントについて知りたい
    • 9・3 ブックマークについて知りたい
  • 10 作ったプログラム(マクロ)を動作させたいとき
    • 10・1 引数を持たないSubプロシージャを実行するには
    • 10・2 標準のSubプロシージャをVBEから直接実行するには
    • 10・3 フォームを試しに表示してみるには
    • 10・4 あるプロシージャを別のプロシージャから呼び出すには
    • 10・5 Functionプロシージャを実行するには
  • 11 プログラム(マクロ)の実行を停止/一時停止させたいとき
    • 11・1 プログラムの実行を停止/一時停止/再開するには
  • 12 プログラムを管理したいとき
    • 12・1 プロジェクトエクスプローラとその役割
    • 12・2 任意のモジュールをコードウィンドウに表示させる方法
  • 13 ユーザーフォームは,独自のフォームを作りたいときに使う
  • 14 プログラムのバグ(誤り)を直すときのツールを知りたい
  • 15 イミディエイトウィンドウについて知りたい
    • 15・1 イミディエイトウィンドウとは
    • 15・2 イミディエイトウィンドウの使い方
  • 16 ウォッチウィンドウについて知りたい
    • 16・1 ウォッチウィンドウとは
    • 16・2 ウォッチウィンドウの使い方を知りたい
    • 16・3 ウォッチウィンドウの手動による表示
    • 16・4 ウォッチウィンドウの各部分についての説明
  • 17 ローカルウィンドウについて知りたい
    • 17・1 ローカルウィンドウとは
    • 17・2 [呼び出し履歴]ダイアログボックスについて

第14章 ユーザー独自のダイアログボックスの作り方・使い方

  • 1 ユーザー独自のダイアログボックスとは何か
  • 2 VBAのユーザーフォームについて知りたい
    • 2・1 VBAのユーザーフォームとは
    • 2・2 ExcelのフォームはVBAのユーザーフォームだけじゃない
  • 3 コントロールについて知りたい
    • 3・1 コントロールとは
    • 3・2 Visual Basic標準コントロールとは
    • 3・3 ActiveXコントロールとは
  • 4 ツールボックスについて知りたい
    • 4・1 ツールボックスとは
    • 4・2 ツールボックスの表示方法
  • 5 ユーザーフォームツールバーについて知りたい
    • 5・1 ユーザーフォームツールバーとは
    • 5・2 [最前面へ移動]ボタンと[最背面へ移動]ボタンについて
    • 5・3 ズームボタンの働きについて
    • 5・4 ユーザーフォームツールバーの表示方法
  • 6 ユーザー独自のダイアログボックスを作る手順を知りたい
  • 7 新しいフォームを挿入する方法を知りたい
  • 8 フォームにActiveXコントロールを配置する手順を知りたい
  • 9 フォームに配置後のコントロールを操作する方法
    • 9・1 [オブジェクトの選択]ボタンについて
    • 9・2 コントロールの位置を変更するには
    • 9・3 フォーム上に配置したコントロールをコピーするには
    • 9・4 コントロールの大きさを変更するには
    • 9・5 フォームからコントロールを削除するには
  • 10 各コントロールに対するコードを記述するには
    • 10・1 各コントロールのイベントプロシージャを表示するには
    • 10・2 各コントロールの持っているイベントを調べるには
  • 11 ユーザーにとって使いやすいダイアログボックスとは
    • 11・1 使いやすいプログラムはGUIが優れている
    • 11・2 勉強が好きなユーザーはいない 〜 独自インターフェースの功罪
    • 11・3 奇抜だと思わせるより,“これならできそうだ”と思わせよう
    • 11・4 画面の解像度や色数を考慮に入れよう
    • 11・5 使用するフォントにも気をつけよう
    • 11・6 ダイアログボックスの配置に気をつけよう
    • 11・7 色合いにも気をつけよう
    • 11・8 無駄な時間をかけないこと
    • 11・9 ユーザーは何をするかわからないと思っておこう
    • 11・10 ユーザーに回避手段を与えておこう
  • 12 コントロールの配置とコードの記述に関する例題
    • 12・1 各コントロールの配置方法・利用方法についての例題
    • 12・2 各コントロールのイベントプロシージャの記述方法に関する例題

第15章 マクロ記録機能の使い方

  • 1 マクロ記録機能の概要を知りたい
    • 1・1 マクロ記録機能とは
    • 1・2 マクロ記録機能の欠点
    • 1・3 マクロ記録機能の本当の活用法は
  • 2 マクロ記録の方法を知りたい
    • 2・1 マクロ記録機能を使ったマクロの基本的作成方法
    • 2・2 [マクロの記録]ダイアログボックスの記入方法
    • 2・3 マクロ記録機能で記録したマクロの確認方法
  • 3 [相対参照]ボタンの使い方を知りたい
    • 3・1 [相対参照]ボタンはどのようなときに使うのか
    • 3・2 絶対参照について知りたい
    • 3・3 相対参照について知りたい
  • 4 マクロを記録するときの注意点を知りたい
    • 4・1 マクロ記録機能は間違った操作もすべて記録する
    • 4・2 自動保存機能には注意する
    • 4・3 Excelで用意されている機能はマクロにしないこと
  • 5 記録したマクロの実行方法を知りたい
    • 5・1 Excelからマクロを実行するには
    • 5・2 Visual Basic Editorからマクロを実行するには
    • 5・3 実行中のマクロを途中でやめさせるには

付録

  • 付録A あらゆる情報源を駆使しよう
    • 1 インターネットのホームページを利用する
    • 2 メールングマガジン/メーリングリストを利用する
    • 3 ニュースグループや掲示板を利用する
    • 4 雑誌からの情報を利用する
    • 5 Microsoft Developer Network(MSDN)に加入する
    • 6 Microsoft TechNet CD Subscription
  • 付録B Excel 2000のインストールに関する情報
    • 1 Office製品を正常に動作させるために修正モジュールを適用する
    • 2 修正モジュールの落とし穴
    • 3 Office 2000 SR-1の入手方法
    • 4 修正モジュールの適用順序
  • さくいん
  • 逆引きさくいん

著者プロフィール

前田智美(まえだともみ)

法政大学大学院工学研究科電気工学専攻修士課程修了。大学院では固定物性学を研究。1988年からは日本工学院八王子専門学校電子工学科教師に。勤務中に高温超伝導体とVisual Basicを研究。1997年,ベストセラーとなった「Excel97 はじめてのVBAプログラミング」(技術評論社)の出版とともに,アイビームサポート代表として独立。執筆の傍ら,VBによるSQL Serverデータベース原価/在庫管理システムの本格的実践開発も経験。その後,技術評論社にてExcel VBAやAccess VBAのセミナー講師を2年間担当。

主な著書は,本書の前身となったロングセラーの「Excel VBA ポケットリファレンス」,「“Excel はじめてのVBAプログラミング”シリーズ」,Linuxプログラミング解説書の「はじめてのKylixプログラミング」(いずれも技術評論社,)など多数。

応用物理学会会員,ActiveX CT協議会会員。