Excel+Access[2000/2002/2003対応]データベース完全活用ガイド
2004年3月26日紙版発売
谷尻かおり 著
B5変形判/288ページ/CD1枚
定価2,838円(本体2,580円+税10%)
ISBN 4-7741-1995-4
ただいま弊社在庫はございません。
書籍の概要
この本の概要
最もメジャーな表計算ソフトExcelは,いろいろな用途で使われています。本来の表計算に用いられるのはもちろんのこと,意外にもデータベースとして使われていることも少なくありません。本書は,ここにテーマを絞りました。Excel単体でデータベースとして使う,Accessといっしょにデータベースシステムを作ってみる,Accessに蓄積されたデータを手許のExcelで利用するなど,事務仕事において考えられる多様な利用法を丁寧に解説しています。
こんな方におすすめ
- 手許のExcelでデータ管理をしたい方
- AccessのデータをExcelに取り込んで処理したい方
- Accessへの接続方法を知りたい方
著者の一言
この本は「Excelでデータベースを作る」という大胆なことに取り組む本です。作成するデータベースは2種類。1つは文章中のキーワードを使ってデータを検索するシステム,もう1つはExcelの表計算機能を活用した帳票管理システムです。また,後半ではAccessのデータをExcelで利用する方法も紹介しました。難しいと思っていたデータベースも,Excelなら簡単に扱えることに気づくことでしょう。
目次
第1章 Excelでデータベースを管理する
- 01 Excelの特長を活かしてこんなことができる
- 1.1 「表」は情報を整理するときの基本
- 1.2 メモの管理ができる
- 1.3 帳票の管理ができる
- 1.4 Excelのススメ
- 02 Excelでデータベースを管理/運営するコツ
- 2.1 データベースの言葉を覚えよう
- 2.2 Excelではシートをテーブル代わりに使う
- 2.3 蓄積用と入力用のシートを分ける
- 2.4 マクロを活用する
- 2.5 Accessのデータを利用する
- 03 Excelのセキュリティ
第2章 営業支援システムを作ろう
- 01 営業支援システムについて
- 1.1 目的は「情報を共有すること」
- 1.2 営業支援システムの特長
- 1.3 営業支援システムでできること
- ■新規データの入力チ26/■顧客名で検索チ27/■日付の範囲で検索チ28/■キーワードを使ったAND検索とOR検索チ28
- 1.4 システムを上手に運用するためのルール
- 02 テーブルを作ろう
- 2.1 大雑把に設計するのがコツ
- ■ID番号はデータを識別するための固有の情報チ30/■打ち合わせの内容を「要約」と「詳細」に分ける必要はないチ30
- 2.2 [T_メモ]シートのデザイン
- ■シート名は必ず付けることチ31
- 03 データを入力して登録しよう
- 3.1 入力画面のデザイン
- ■複数のセルを結合して1つのセルとして扱う ―― 結合セルチ32
- 3.2 [T_メモ]シートにデータを登録する
- ■表の行と列を入れ替えて貼り付ける ―― 形式を選択して貼り付けチ33/■ボタンを追加してマクロを作成する ―― マクロの記録チ33/■ボタン表面の文字を変更する ―― ボタンの選択チ35
- 3.3 自動生成されたプログラム
- ■マクロ記録で自動生成されたプログラムを読むチ37/■命令の書き方 ―― オブジェクト.メソッドチ38/■マクロ記録で作成したプログラムには省略できる命令もあるチ38
- 3.4 マクロを修正する
- ■プログラムで計算に使う値は「変数」に入れるチ40/■画面のチラつきを防止する ―― ScreenUpdatingプロパティチ40/■命令の書き方 ―― オブジェクト.プロパティ = 設定値チ41/■データの最終行を調べる ―― Endプロパティチ41/■もしも〜ならば…を実行する ―― If…Elseステートメントチ41/■貼り付け先のセルは「最終行番号+1」行目チ42/■マクロの実行中にメッセージを表示する ―― MsgBoxステートメントチ42
- 04 連番を自動的に表示しよう
- 4.1 メニュー画面のデザイン
- ■ボタンの書式を設定するチ43
- 4.2 [番号]を自動で作成する方法
- 4.3 [番号]と[日付]を自動的に表示する
- ■VBAでマクロを作成する ―― マクロの新規作成チ46/■セルの内容を削除する ―― ClearContentsメソッドチ46/■他のシートのセルを参照する ―― Rangeオブジェクトチ46/■VBAでワークシート関数を実行する ―― WorksheetFunctionオブジェクトチ46/■指定したセル範囲の最大値を求める ―― MAX関数チ47/■今日の日付を調べる ―― Date関数チ47
- 05 顧客名を使って抽出しよう
- 5.1 結果をどう表示するか
- 5.2 検索画面とメニューのデザイン
- 5.3 抽出したデータを画面に表示する方法
- 5.4 データを抽出する
- ■データが連続するセル範囲を調べる ―― CurrentRegionプロパティチ53/■抽出に使う値を自由に入力する ―― InputBox関数チ53/■プログラムを途中で終了する ―― Exit Subステートメントチ54/■オートフィルタを実行する ―― AutoFilterメソッドチ54/■抽出したデータを別のワークシートにコピーする ―― Copyメソッドチ54/■結合セルには値を貼り付けることができない?チ54
- 06 レコード移動ボタンを作ろう
- 6.1 レコード移動ボタンの動作
- ■[先頭]ボタンチ56/■[前へ]ボタン,[次へ]ボタンチ56/■[最終]ボタンチ56
- 6.2 抽出したレコード数と表示中のデータの関係
- ■抽出したデータの個数チ57/■表示中の行番号と抽出結果のレコード番号チ57/■すべてのボタンで変数を共有する ―― パブリック変数チ58
- 6.3 [顧客名]ボタンに作成したマクロを修正する
- ■抽出データに関する情報を取得するチ60/■セルにスラッシュ(/)を含んだ文字列を代入する ―― 接頭辞(')チ60/■文字列を連結する ―― 文字列連結演算子(&)チ61
- 6.4 先頭レコードに移動する
- 6.5 前のレコードに移動する
- 6.6 次のレコードに移動する
- 6.7 最終レコードに移動する
- 07 日付を使ってデータを検索しよう
- 7.1 オートフィルタのオプション
- ■両方の条件を満たすデータを抽出する ―― AND条件チ65/■どちらか一方の条件を満たすデータを抽出する ―― OR条件チ66
- 7.2 日付の範囲で抽出する
- ■2つの値を比較する ―― 比較演算子チ68/■条件を2つ使って抽出する ―― AutoFilterメソッドチ69
- 08 キーワードで検索しよう
- 8.1 複雑な条件でデータを抽出する方法
- ■抽出条件の書き方 ――[フィルタオプションの設定]ダイアログボックスチ70/■特定の文字を含んだデータを抽出するには ―― ワイルドカードチ71/■抽出結果の表示場所チ71
- 8.2 キーワード入力用フォームのデザイン
- 8.3 ユーザーフォームを表示する
- 8.4 すべての条件を満たすデータを抽出する
- ■テキストボックスの内容を参照する ―― Textプロパティチ77/■複雑な条件でレコードを抽出する ―― AdvancedFilterメソッドチ78/■抽出条件を削除しないと,続けて抽出したときの動作がおかしくなるチ78/■フォームを非表示にする ―― Hideメソッドチ79
- 8.5 どれか1つの条件を満たすデータを抽出する
- ■OR検索のときは抽出条件の範囲を正しく設定すること ―― AdvancedFilterメソッドチ82
- 8.6 ユーザーフォームを閉じる
- 09 既存のデータを編集しよう
- 9.1 [番号]を使ってデータを検索する方法
- ■データを高速に検索する ―― Findメソッドチ83/■オブジェクトに値を代入する ―― Setステートメントチ84
- 9.2 [T_メモ]シートの既存のデータを編集する
- ■オブジェクト変数は参照したオブジェクトと同じメソッドを実行できるチ85
- 10 アプリケーションの全体を見直そう
- 10.1 起動時にメニュー画面を表示する
- ■ブックを開くときに実行する処理はWorkbookオブジェクトに作成する ―― Openイベントチ87
- 10.2 続けてデータを抽出できるようにする
- 10.3 メニュー画面に戻る機能を追加する
- 10.4 ブックを保存して終了する
第3章 注文管理システムを作ろう
- 01 注文管理システムについて
- 1.1 目的は「複数の情報が絡んだ伝票を管理すること」
- 1.2 注文管理システムの特長
- 1.3 注文管理システムでできること
- ■注文書の入力チ94/■納品書の印刷チ95/■注文番号を利用した検索チ96/■注文データの修正と削除チ97/■売れ筋商品の分析チ97/■顧客データの分析チ97/■商品データの分析チ98/■各種データの編集チ98
- 02 テーブルを作ろう
- 2.1 伝票をメインに考えるのがコツ
- ■計算で求められる項目をテーブルに残す必要はないチ100/■他から参照できるものはキーになる項目だけを残すチ100
- 2.2 テーブルのデザイン
- ■[T_注文]シートチ101/■[T_商品]シートチ101/■[T_顧客]シートチ102/■[T_担当]シートチ102
- 2.3 ExcelとAccessの違い
- 03 入力画面の基本部分を作ろう
- 3.1 入力画面のデザイン
- ■結合セルを使って表をデザインするチ104/■日付や金額を表示するセルは表示書式を設定するチ104/■セルに計算式を入力するチ105/■「もしも〜ならばA,それ以外ならB」を表示する ――IF関数チ105
- 3.2 [T_注文]シートにデータを登録する方法
- ■コピー用のデータを別の領域に用意するチ106/■セルの絶対参照と相対参照を使い分けるチ107
- 3.3 データを登録する
- ■データの個数を調べる ――COUNTA関数チ109/■セルを選択するときは行番号に注意するチ110/■セルの値を貼り付ける ――PasteSpecialメソッドチ110/■[注文日]と[連番]を使ってデータを昇順に並べ替える ――Sortメソッドチ111
- 04 納品書を印刷しよう
- 4.1 印刷画面のデザイン
- ■各セルには[入力]シートの値を表示するチ113/■顧客名の後ろに「様」を付けて出力するチ113
- 4.2 シートをプレビューする
- 05 入力しやすい画面にしよう
- 5.1 リストから選択する
- 5.2 範囲に名前を付けて参照する
- 5.3 VLOOKUP関数で値を参照する
- ■列を使ってデータを検索する ――VLOOKUP関数チ117/■同じ方法で[品名]と[税込価格]を表示するチ118
- 06 注文番号を自動的に表示しよう
- 6.1 [注文番号]に表示する値
- ■注文書の入力日と[T_注文]シートの最終行の[注文日]が異なる日付のときチ119/■注文書の入力日と[T_注文]シートの最終行の[注文日]が同じ日付のときチ120
- 6.2 [注文番号]を作成するプログラム
- ■特定の処理を実行するプログラムを作成する ――プロシージャの追加チ122/■[注文日]と[連番]をセルに代入するチ122/■[注文日]と[連番]を使って[注文番号]を作成するチ122/■日付や数値の書式を整える ――Format関数チ122
- 6.3 メニュー画面を作成する
- ■Subプロシージャの呼び出し方 ――Callステートメントチ124/■[入力]シートを初期化するプログラムチ124
- 07 [顧客名]と[品名]を選択できるようにしよう
- 7.1 [フォーム]ツールバーと[コントロールツールボックス]ツールバーの違い
- 7.2 [顧客名]をコンボボックスに表示する
- ■コントロールはデザインモードで編集するチ128/■コントロールのサイズと位置を変更するチ128/■コンボボックスのプロパティを設定するチ129
- 7.3 [品名]をコンボボックスに表示する
- 08 [注文番号]を使って注文書を検索しよう
- 8.1 検索したセルの位置を調べる方法
- 8.2 データを検索するプログラム
- ■処理の結果を呼び出し元に返すプログラム ――Functionプロシージャチ137/■複数の処理結果を返すプログラム ――ByRefキーワードチ138/■エラー時の処理を作成する ――On Errorステートメントチ139/■エラー処理と併せて正常終了時の処理も忘れずに作成することチ139
- 8.3 注文番号を使ってデータを検索する
- ■Functionプロシージャの呼び出し方チ141/■該当する[注文番号]が見つからなかったときチ142/■[T_注文]シートからデータを貼り付けるチ142
- 09 既存データの編集機能を作ろう
- 9.1 表示中のデータを削除する
- ■[はい]と[いいえ]ボタンを含んだダイアログボックスを表示する ――MsgBox関数チ145/■削除するデータはFindDataプロシージャを使って検索するチ145/■行全体を削除する ――Deleteメソッドチ145
- 9.2 表示中のデータを再登録する
- ■データが重複して登録されないように,既存のデータを削除してから登録するチ148/■セルを参照するときは選択中のシートに気をつけるチ148
- 9.3 新規データを入力できるようにする
- 10 売れ筋商品を調べよう
- 10.1 メニュー画面と[売筋分析]シートのデザイン
- 10.2 ピボットテーブルウィザードを利用する
- 10.3 既存のピボットテーブルを削除する
- ■[ピボットテーブルオプション]ダイアログボックスチ158/■ピボットテーブルがあるかどうかを調べる ――Countプロパティチ159/■[T_注文]シートの最終行を調べて,データの範囲を正しく設定するチ160
- 11 顧客別の注文状況を分析しよう
- 11.1 [顧客調査]シートのデザイン
- 11.2 [顧客調査]シートに出力するデータ
- 11.3 顧客の注文履歴を調べる
- 12 商品別の注文状況を分析しよう
- 12.1 [商品調査]シートに出力するデータ
- 12.2 [商品調査]シートのデザイン
- 12.3 商品の注文状況を調べる
- ■セルに代入した式を貼り付ける ――PasteSpecialメソッドチ169
- 13 各種データを編集しよう
- 13.1 [T_商品]シートのデザイン
- 13.2 各種データの入力画面を表示する
- 13.3 [T_商品]シートの内容を更新する
- ■[商品リスト]の範囲を変更するチ175/■コンボボックスのListFillRangeプロパティを再設定するチ175
- 13.4 [T_顧客]シートの内容を更新する
- 13.5 [T_担当]シートの内容を更新する
- 14 アプリケーションの全体を見直そう
- 14.1 起動時に実行する処理
- ■他のマクロを呼び出す方法 ――Callステートメントチ179/■ゥキーを押したのと同じ動作を実行する ――SendKeysメソッドチ179
- 14.2 続けてデータを分析できるようにする
- 14.3 メニュー画面に戻る機能を追加する
- 14.4 ブックを保存して終了する
第4章 Accessのデータを利用しよう
- 01 [データの取り込み]コマンドでできること
- ■Accessで編集した内容は,いつでもシートに反映できるチ185/■シートで編集した内容はAccessに反映できないチ186
- 02 データアクセスの基本を押さえよう
- 2.1 ADOオブジェクトの役割
- 2.2 データアクセスの準備
- 2.3 データベースに接続する
- ■オブジェクトを扱う変数に参照を代入する ―― Setステートメントチ189/■データベースの接続情報を設定する ―― ConnectionStringプロパティチ189/■データベースに接続する ―― Openメソッドチ190
- 2.4 取得したデータをシートに挿入する
- ■テーブルからデータを取得する ―― Openメソッドチ190/■取得したデータをExcelのシートに貼り付ける ―― CopyFromRecordsetメソッドチ191
- 2.5 データベースの接続を解除する
- 03 Accessからデータを取得しよう
- 3.1 テーブルからすべてのデータを取得する
- 3.2 テーブルから必要なデータだけを取得する
- ■テーブルからデータを取得する ―― SELECTステートメントチ194/■データを抽出する条件式 ―― WHERE句チ195
- 3.3 日付を使って抽出する
- ■抽出する日付はシャープ(#)で囲むチ196
- 3.4 日付の範囲を使って抽出する
- ■抽出する範囲を指定する ―― BETWEEN…AND演算子チ198
- 3.5 指定した文字列と完全に一致するデータを抽出する
- ■抽出に使う文字列はシングルクォーテーション(')で囲むチ199
- 3.6 キーワードを使って抽出する
- ■あいまいな条件で抽出する ―― LIKE演算子チ201
- 3.7 すべての条件を満たすデータを抽出する
- ■「AかつB」という条件式はANDを使って作成するチ203/■処理を繰り返して実行する ―― For…Nextステートメントチ203
- 3.8 どれか1つの条件を満たすデータを抽出する
- ■「AまたはB」という条件式はORを使って作成するチ206
- 04 Accessにデータを出力しよう
- 4.1 編集可能なRecordsetオブジェクトを作成する
- 4.2 テーブルに新しいデータを追加する
- ■新しいデータを追加するときは,テーブルからすべてのデータを取得するチ208/■AddNewメソッドとUpdateメソッドを使ってレコードを追加するチ209/■追加したレコードに値を代入する方法チ209
- 4.3 テーブルの既存のデータを編集する
- ■既存のデータを編集するときは,そのレコードだけを取得するチ211/■既存のレコードを編集するときはUpdateメ
- ソッドだけを実行するチ212
- 4.4 テーブルの内容をすべて書き換える
- ■テーブル全体を更新する方法チ214/■テーブルからすべてのレコードを削除する ―― DELETEステートメントチ214/■すべてのデータをテーブルに追加する処理はFor…Nextステートメントで作成するチ214
第5章 Excel+Accessで注文管理システムを作ろう
- 01 Excel+Accessバージョンの注文管理システムについて
- 1.1 目的は「Excelで外部データベースのデータを利用すること」
- 1.2 注文DB.xlsの特長
- ■起動時にデータベースに接続するチ218/■接続時に各種データを取得するチ219/■各種データはデータベースへの接続を解除するときに更新するチ221/■注文データはリアルタイムで更新するチ221/■データベースに接続していないときチ222
- 1.3 注文DB.xlsの準備
- 02 Accessでテーブルを作成しよう
- 2.1 リレーショナル型データベースの特徴
- 2.2 テーブルのデザイン
- 03 データベースに接続しよう
- 3.1 パブリック変数の宣言
- 3.2 接続確認用フォームのデザイン
- ■選択したボタンを調べる方法チ230/■[キャンセル]ボタンの動作チ230
- 3.3 データベースに接続する
- ■データベースに接続できなかったときの処理を用意しておくチ232
- 3.4 データベースに接続したときに実行する処理
- ■各シートからデータを削除するチ232/■テーブルからデータを取得するチ233
- 3.5 [frm接続]フォームを表示する
- 3.6 [frm接続]フォームを初期化する
- ■データベースの接続状態を確認する ―― Stateプロパティチ238/■コントロールを使用可能にするかどうか ―― Enabledプロパティチ238
- 04 データベースの接続を解除しよう
- 4.1 テーブルを更新する
- ■シート名は引数で渡すチ241/■列の個数を調べる ―― Columnプロパティチ241/■編集可能なRecordsetオブジェクトを作成するチ242/■全データをテーブルに書き込む処理は二重の繰り返し構造を使って作成するチ242/■Recordsetオブジェクトのフィールドを参照する方法チ243
- 4.2 接続を解除する
- 05 注文データを編集しよう
- 5.1 入力画面を表示する
- 5.2 注文番号を自動で作成する
- ■[注文番号]を作成する方法チ248/■テーブルから取得したレコードを並べ替える ―― Sortプロパティチ248/■[T_メイン]テーブルにレコードが登録されていないときチ249
- 5.3 入力したデータをデータベースに登録する
- ■複数のデータを登録する方法チ252/■表示中のデータが新しい注文書のときチ252/■表示中のデータが既存の注文書のときチ253/■[T_サブ]テーブルを更新する方法チ253
- 5.4 既存のデータを検索する
- ■検索したデータを入力画面に表示する方法チ254/■検索処理を行う前に,前のデータを削除するチ255/■特定の注文書を検索するチ256
- 5.5 既存のデータを削除する
- ■特定のデータを削除するSQLステートメント ―― DELETEステートメントチ260
- 5.6 新規の入力画面を表示する
- 06 データを分析しよう
- 6.1 売れ筋商品を分析する
- ■ピボットテーブルに表示するデータチ261/■[売筋分析]シートのデザインチ263/■ピボットテーブルを作成するチ263
- 6.2 顧客の注文履歴を調べる
- ■一覧表示するデータチ266/■[顧客調査]シートのデザインチ267/■顧客の注文履歴を調べるチ268
- 6.3 商品別に注文状況を調べる
- ■一覧表示するデータチ271/■顧客の詳細情報を参照する方法チ272/■商品別に注文状況を調べるチ272
- 07 アプリケーションの全体を見直そう
- 7.1 起動時に実行する処理
- 7.2 各種データの登録
- 7.3 終了時に実行する処理
- ■ブックを保存せずに終了するチ278
- 付録
- Excel2000でピボットテーブルを作成する
この本に関連する書籍
-
ACCESSクエリの達人ガイド <集計&データ整理の極意> [2000/2002/2003/2007対応]
データベースを利用するにあたって最も需要があるのは,蓄積されているデータを何らかの意図に沿って引き出すことです。そして,そのためには,多くの場合,クエリで十...
-
改訂新版 Access はじめてのデータベース [Access 2003/2002/2000対応]
ご好評いただいた「Access2000 はじめてのデータベース」がAccess2003をベースに生まれ変わりました。データベースの設計,クエリの作成法,正規化処理のしかた,リレー...
-
かんたんプログラミング Excel 2003 VBA 基礎編
Excel VBA入門書の決定版。レイアウトも全面的に見直し,さらに読みやすくなりました。VBAの基本をていねいに解説した各章の章末には練習問題が,CD-ROMにはVBAエキスパ...
-
知りたい操作がすぐわかる [標準]Excel2003 全機能Bible
「エキスパートがすみからすみまで調べ倒した」画期的なシリーズ『全機能Bible』。MS Office 2003の使い勝手を全調査し,パワーアップした内容を実現しました。従来と質...