Access Tips

MicrosoftAccessを活用するためのテクニックを紹介しています

Database Template #003A Estimate見積管理

 

1.データベース概要

About this Template このテンプレートについて

見積書を作成し管理するためのシンプルなデータベーステンプレートです。

 

Description 機能詳細

サブフォームに詳細データを表示

・ファンクションキーへのマクロ割り当て

・印刷プレビュー時に表示するデータがない場合にメッセージを表示

 

Screenshot スクリーンショット

一覧画面(List)・・・レコードを一覧で表示します。

f:id:BeansWorks:20170518220648p:plain

 

入力画面(Edit)・・・レコードの新規作成・修正・削除等を行います。

f:id:BeansWorks:20170518220714p:plain

 

印刷画面(Print) ・・・印刷プレビューと帳票印刷をする画面です。

f:id:BeansWorks:20170518220731p:plain

 

Download ダウンロード

本書で作成するテンプレートを下記リンク先からダウンロードすることができます。データベースの動作を事前に確認しておくことで開発をスムーズに進めることができるでしょう。

www.dropbox.com

2.新規データベースの作成

Accessでは始めにファイルを新規作成し名前をつけて任意の場所に保存する必要があります。

2-1.Accessを起動し[新規作成]画面でファイルを任意の場所に作成します。

f:id:BeansWorks:20170518230132p:plain

 

2-2.データベースが起動しテーブルが表示されます。

f:id:BeansWorks:20170518230151p:plain

 

3.テーブルの作成

レコードを保存するテーブルを作成しましょう。

3-1.「テーブル1」の上で右クリックしデザインビューを選択します。f:id:BeansWorks:20170518230615p:plain

 

3-2.[名前を付けて保存]ウインドウが表示されたら「TBL_Estimate_H」と入力し[OK]をクリックして保存します。

f:id:BeansWorks:20170518230651p:plain

 

3-3.テーブルのデザインビューで「フィールド名」と「データ型」を設定しましょう。 

f:id:BeansWorks:20170518230759p:plain

 

「TBL_Estimate_H」テーブルデザイン

f:id:BeansWorks:20170524231307p:plain

 

3-4.同様に「TBL_Estimate_L」と「TBL_Company_Info」を下記項目で作成します。

 「TBL_Estimate_L」テーブルデザイン

f:id:BeansWorks:20170524231402p:plain

 

「TBL_Company_Info」テーブルデザイン

f:id:BeansWorks:20170524231442p:plain

 

4.リレーションシップの作成

リレーションシップを作成すると2つ以上のテーブルを関連付けることができます。

4-1.[データベースツール]-[リレーションシップ]をクリックします。

f:id:BeansWorks:20170615001704p:plain

 

4-2.「リレーションシップ」ウインドウが開いたら[デザイン]-[テーブルの表示]をクリック。

f:id:BeansWorks:20170615001734p:plain

 

4-3.[テーブルの表示]ウインドウが開いたら「TBL_Estimate_H」と「TBL_Estimate_L」を追加しウインドウを閉じます。

f:id:BeansWorks:20170615001753p:plain

 

4-4.[リレーションシップの編集]-[新規作成]で下記の様に設定し[OK]をクリックします。

f:id:BeansWorks:20170615001812p:plain

 

4-5.次にリレーションシップを確認し[作成]をクリックします。

f:id:BeansWorks:20170615001831p:plain

 

4-6.リレーションシップを確認し保存しましょう。

f:id:BeansWorks:20170615001902p:plain

 

5.フォームの作成(Edit)

レコードの登録や削除、修正するためのフォームをつくりましょう。

 

5-1.[作成]-[フォームデザイン]で空白のフォームを表示します。

f:id:BeansWorks:20170615001941p:plain

 

5-2.フォーム上で右クリックするとメニュが表示されるので[フォームヘッダー/フッター]をクリックします。

f:id:BeansWorks:20170615002001p:plain

 

5-3.プロパティシートの[フォーム]-[書式]-[幅]を25㎝に設定します。

 

5-4.ヘッダーとフッターの高さは1.5㎝、詳細の高さは10㎝にそれぞれ設定し保存する。

 

5-5.[名前を付けて保存]ダイアログでフォーム名を入力し[OK]をクリック。

f:id:BeansWorks:20170615002018p:plain 

 

6.フォームのプロパティ設定

フォームデザインツールで[デザイン]‐[プロパティシート]を表示します。

6-1.フォームのプロパティシートを下記の通り設定します。

f:id:BeansWorks:20170615002622j:plain

7.フィールドの追加

フォームにフィールドを追加して画面をデザインしましょう。

7-1.デザインビューで「FRM_Edit」を開き、[デザイン]-[既存フィールドの追加]をクリックします。

f:id:BeansWorks:20170615002734p:plain

7-2.フィールドリストよりドラッグ・アンド・ドロップでフィールドを配置しましょう。

f:id:BeansWorks:20170615002820p:plain

 

7-3.それぞれのフィールドにラベルを追加していきます。

f:id:BeansWorks:20170615002840p:plain

 

8.タブオーダーの設定

タブオーダーを設定するとレコード入力の順番を指定することができます。

8-1.入力する順番を設定します。まずは[デザイン]-[タブオーダー]をクリック。

f:id:BeansWorks:20170615002909p:plain

 

8-2.次にタブオーダーを入れ替えて修正しましょう。

f:id:BeansWorks:20170615002936p:plain

 

9.サブフォームの作成

サブフォームを配置してフォーム上に2つのテーブル情報を表示することができます。

9-1.[デザイン]-[サブフォーム/サブレポート]をクリックしフォームに配置します。

f:id:BeansWorks:20170615003005p:plain

 

9-2.[サブフォームウィザード]が表示されたら[次へ]をクリック。

f:id:BeansWorks:20170615003042p:plain

 

9-3.テーブル:TBL_Estimate_Lの全てのフィールドを選択し[次へ]をクリック。

f:id:BeansWorks:20170615003059p:plain

 

9-4.リンクを確認し[次へ]をクリック。

f:id:BeansWorks:20170615003125p:plain

 

9-5.サブレポートの名前を「SUB_Edit」に変更して[完了]をクリックします。

f:id:BeansWorks:20170615003151p:plain

 

9-6.サブフォームが配置されたらラベルを削除しプロパティで[書式]-[境界線スタイル]を「無色」に変更しましょう。

f:id:BeansWorks:20170615003212p:plain

 

9-7.フォームヘッダーのプロパティーシートで[書式]-[背景色]を白に変更しておきます。

 

10.サブフォームのレイアウト調整

10-1.[SUB_Edit]をデザインモードで開き、幅を13㎝、フォームヘッダーの高さを0.5㎝、詳細の高さを0.6㎝に設定し、ラベルとフィールドのレイアウトを調整します。

 

10-2. [デザイン]-[テキストボックス]でテキストボックスを追加し、プロパティシートの[データ]-[コントロールソース]に下記の式を入力。

「amount」 =[Unit_Price]*[Qty]

 

同様に下記テキストボックスを作成します。

「subtotal」 =Sum([Unit_Price]*[Qty])

f:id:BeansWorks:20170615003246p:plain

10-3.フォームフッターのプロパティで[書式]-[可視]を「いいえ」にしておく。

 

11.サブフォームのプロパティ設定

11-1.プロパティシートを下記の通り設定します。

f:id:BeansWorks:20170615004358j:plain

 

12.計算フィールドの追加

フォームにサブフォームと連動した計算フィールドを追加します。

 

12-1. [FRM_Edit]をデザインモードで開き、サブフォームの下部に[memo]フィールドと[Tax_Rate]フィールドを追加します。

f:id:BeansWorks:20170621204858p:plain

12-2. [デザイン]-[テキストボックス]でテキストボックスを追加し、プロパティシートの[データ]-[コントロールソース]に下記の式を入力します。

「subtotal」 =[SUB_Edit].[Form]![subtotal]

 

同様に下記テキストボックスを作成しましょう。

「tax」 =[subtotal]*[Tax_Rate]

「total」 =[subtotal]+[tax]

 

13.フォームの作成(List)

一覧(リスト)表示用のフォームを作成しましょう。

13-1.[作成]-[フォームウィザード]をクリック。

f:id:BeansWorks:20170621204955p:plain

 

13-2.「テーブル:TBL_Estimate_H」のフィールドをすべて選択し、[次へ]をクリックします。

f:id:BeansWorks:20170621205024p:plain

 

13-3.フォームのレイアウトは[表形式]を選択し、[次へ]をクリック。

f:id:BeansWorks:20170621205048p:plain

 

13-4.フォーム名を「FRM_List」に変更し、「フォームのデザインを編集する」オプションを選び[完了]をクリックします。

f:id:BeansWorks:20170621205114p:plain

 

13-5.デザインビューでラベルを修正し、レイアウトを調整しましょう。

f:id:BeansWorks:20170621205215p:plain

 

14.表形式フォームで選択したデータを帳票形式で表示する

VBA(Visual Basic for Application)を使うとさらに細かな設定が可能になります。

 

14-1.FRM_Listをデザインビューで開き詳細パートを選択。

 

14-2.次にプロパティシートの[イベント]-[クリック時]の項目で右端のビルドボタンをクリックします。

f:id:BeansWorks:20170621205316p:plain

 

14-3.[ビルダーの選択]ウインドウで「コードビルダー」を選択して[OK]をクリック。

f:id:BeansWorks:20170621205350p:plain

14-4.VBAのウインドウが開いたらカーソルが点滅している場所に次のコードを入力し保存します。

---------------------------------------------------------------------

Private Sub 詳細_Click()

DoCmd.OpenForm "FRM_Edit", , , [Slip_No] = Me.[Slip_No]

End Sub

---------------------------------------------------------------------

f:id:BeansWorks:20170621205413p:plain

 

 

15.レポートの作成

レポート機能を使って印刷用の帳票を作ってみましょう。

15-1.[作成]-[レポート]-[レポートデザイン]をクリック。

f:id:BeansWorks:20170621205500p:plain

 

15-2.プロパティシートの[データ]-[レコードソース]のビルドボタンをクリック。

f:id:BeansWorks:20170621205536p:plain

 

15-3.「テーブルの表示」ウインドウですべてのテーブルを追加します。 

f:id:BeansWorks:20170621210623p:plain

 

15-4.画面上部のフィールドリストから、下部のデザイングリッドにすべてのフィールドをドラッグ・アンド・ドロップで追加しましょう。

f:id:BeansWorks:20170621211017p:plain

 

15-5.デザイン画面を閉じると下記メッセージが表示されるので[はい]をクリック。

f:id:BeansWorks:20170621211057p:plain

 

15-6.レポートデザイン画面に戻ったら[デザイン]-[グループ化と並び替え]をクリックします。

f:id:BeansWorks:20170621211127p:plain

 

15-7. 「グループの追加」で下記の内容で設定します。

f:id:BeansWorks:20170621211157p:plain

 

15-8.プロパティシートでレポートの幅を18cmに変更し、セクションの高さを以下の通り設定しておく。

  ページヘッダー   ・・・ [書式]-[高さ]→7cm

     詳細       ・・・ [書式]-[高さ]→1cm

  Slip_Noフッター   ・・・ [書式]-[高さ]→2.5cm

  ページフッター  ・・・ [書式]-[高さ]→2.5cm 

 

15-9. [デザイン]-[既存のフィールドの追加]から必要なフィールドを配置します。

 

15-10. [デザイン]-[テキストボックス]でテキストボックスを追加し、プロパティシートの[データ]-[コントロールソース]に下記の式を入力します。

「txt_見積No」 = "見積No." & [Slip_No]

 

同様に下記テキストボックスを作成し、必要なラベルを配置します。

「txt_宛先」 = [customer] & " " & [Station] & " 御中"

「txt_客先担当」="(ご担当者:" & [TBL_Estimate_H.Name_First] & "様" & ")"

「txt_件名」="件名:" & [Title]

「amount」=[Unit_Price]*[Qty]

「subtota」=Sum([Unit_Price]*[Qty])

「tax」=[Unit_Price]*[Qty]*[Tax_Rate]

「total」=([Unit_Price]*[Qty])+([Unit_Price]*[Qty]*[Tax_Rate])

 

15-11. 「Slip_Noフッター」プロパティシートで[書式]-[代替の背景色]を白に変更し、[改ページ]を「カレントセクションの後」に設定。

 

15-12.「RPT_EstimateSheet」と名前を付けて保存します。

 

16. レポートで表示するレコードが無いときにメッセージを出す

16-1. 「RPT_EstimateSheet」をデザインビューで開きプロパティシートの[イベント]-[空データ時]の詳細設定ボタンをクリック。

f:id:BeansWorks:20170621211324p:plain

 

16-2.「ビルダーの選択」ウインドウで「コードビルダー」を選択し[OK]をクリック。

f:id:BeansWorks:20170621211345p:plain

 

16-3.「Microsoft Visual Basic for Applications」のウインドウで次のコードを入力して保存します。

-------------------------------------------------------------------------------

MsgBox "対象レコードはありません", vbExclamation, "Contact List 印刷"

Cancel=True

----------------------------------------------------------------------------

f:id:BeansWorks:20170621211417p:plain

 

16-4.レコードが未入力の時にプレビューするとメッセージが表示されます。

f:id:BeansWorks:20170621211443p:plain

 

17.マクロの作成

マクロを使って定型処理を自動化しましょう。

 

17-1. [作成]-[マクロ]をクリック。

f:id:BeansWorks:20170621211529p:plain

 

17-2.プルダウンメニューから「サブマクロ」を選択します。

f:id:BeansWorks:20170621211550p:plain

 

17-3.サブマクロ名を{F1}とし、新しいアクションの追加で「メニューコマンドの実行」コマンドを「すべて閉じる」を選択したら、更に「フォームを開く」アクションを追加しフォーム名を「FRM_List」とします。

f:id:BeansWorks:20170621211623p:plain

 

 

17-4.同様にサブマクロ名を{F2}をフォーム名を「FRM_Edit」として作成します。

f:id:BeansWorks:20170621211644p:plain

 

17-5.マクロ名を「autokeys」にして保存します。

 

18.ボタンの作成

ボタンを配置して使いやすくしましょう。

18-1.FRM_Listをデザインビューで開き、[デザイン]-[ボタン]をクリックし、フォームヘッダーにボタンを配置します。

f:id:BeansWorks:20170621211720p:plain

 

18-2.「コマンドボタンウィザード」ウインドウで、種類「その他」、ボタンの操作「マクロの実行」を選択し[次へ]をクリック。

f:id:BeansWorks:20170621211759p:plain

 

18-3.リストの中から「AutoKeys{F1}」を選択し[次へ]をクリック。

f:id:BeansWorks:20170621211821p:plain

 

18-4.[文字列]を「List」と入力し[次へ]をクリック。

f:id:BeansWorks:20170621211842p:plain

  

18-5.ボタン名を「BTN_List」と入力して[完了]をクリックするとボタンが完成します。

f:id:BeansWorks:20170621211924p:plain

 

18-7.同様に「BTN_Edit」を作成し背景色を白にしておきましょう。

f:id:BeansWorks:20170621211947p:plain

 

18-8.「FRM_Edit」をデザインビューで開き、上記で作成した2つのボタンをコピーして貼り付けます。

 

18-9.コマンドボタンウィザードを活用して「FRM_Edit」に、①「レコードの操作-レコードの削除」ボタン(BTN_Dell)と、②RPT_Listの「レポートの操作-レポートプレビュー」ボタン(BTN_EstSheet)を追加します。

 

19.ボタンの編集

コマンドボタンウィザードで作成したボタンを編集します。

19-1.FRM_Editをデザインビューで開き17-9で作成した[BTN_Dell]ボタンのプロパティ[イベント]-[クリック時]-[埋め込みマクロ]を選択し[埋め込みマクロ]を削除し空欄にする。 

f:id:BeansWorks:20170621212352p:plain

 

19-2.[イベント]-[クリック時]のビルドボタンをクリックし「ビルダーの選択」ウインドウが開いたら[コードビルダー]を選択し[OK]をクリック。

f:id:BeansWorks:20170621212427p:plain

 

19-3.VBAウインドウでカーソルが点滅している場所に次のコードを入力し保存。

---------------------------------------------------------------------

Private Sub btn_Dell_Click()

On Error GoTo btn_del_Click_Err

If MsgBox("このデータを削除しますか?", vbYesNo) = vbYes Then

  DoCmd.RunCommand acCmdDeleteRecord

End If

Me.Slip_No.SetFocus

Me.Recalc

 

btn_del_Click_Exit:

Exit Sub

btn_del_Click_Err:

    MsgBox Error$

    Resume btn_del_Click_Exit

End Sub

---------------------------------------------------------------------

 

19-4.同様に[btn_EstSheet]ボタンでクリック時のコードを入力し保存します。

---------------------------------------------------------------------

Private Sub btn_EstSheet_Click()

On Error GoTo btn_EstSheet_Click_Err

DoCmd.OpenReport "RPT_EstimateSheet", acViewPreview, , "Slip_No = " & Me!Slip_No

 

btn_EstSheet_Click_Exit:

Exit Sub

btn_EstSheet_Click_Err:

    Resume btn_EstSheet_Click_Exit

End Sub

---------------------------------------------------------------------

 

20.オプションの設定

アプリケーションの動作を変更することができます。

20-1. [ファイル]-[オプション]で「Accessのオプション」ウインドウを開き、[カレントデータベース]を選択したら、[アプリケーションオプション]-[フォームの表示]で「FRM_List」を選択します。

 

20-2.次に[アプリケーションオプション]-[ドキュメントウインドウオプション]-[ドキュメントタブを表示する]と、[アプリケーションオプション]-[ナビゲーション]-[ナビゲーションウインドウを表示する]のチェックを外す。

f:id:BeansWorks:20170621212459p:plain

 

 20-3. 「Accessのオプション」ウインドウで、[クライアントの設定]を選択し、[編集]-[確認]項目の[レコードの変更]、[オブジェクトの削除]、[レコードの変更]のチェックを必要に応じて外し[OK]をクリック。

f:id:BeansWorks:20170621212532p:plain

 

20-4.下記メッセージが出るので一度ファイルを閉じて再度開くと設定が有効になります。

f:id:BeansWorks:20170621212553p:plain

 

 

 

 

 

 

 

 

© 2015 BeansWorks All rights reserved

Database Templateを公開しました!

Microsoft社のAccessはユーザー自らビジネスアプリケーションを開発できる環境を提供するツールで、エンドユーザーが自らスピーディかつ低コストでアプリケーションを作成することが可能になります。しかし、忙しいユーザーにとっては、思い描いたデータベースを迅速に開発することは、なかなか難しいのが現状ではないでしょうか?

 スピーディな開発に有効な手段のひとつが事前にマイテンプレートとしてあらかじめ自分の開発雛形を作っておくことです。いざとなったらそれを加工することで余計な手間を掛けずに短期間での迅速な開発を助けることになります。

 みなさんもこのブログを参考にして自分自身のテンプレートをストックしておくことで、開発の時間を短縮し、スムーズに業務改善を進めていきましょう。

 

Template For Microsoft Access2010 

access.hatenadiary.jp

 

 

 

 

 

Database Template #002A Contact 履歴管理

 

1.データベース概要

About this Template このテンプレートについて

客先との連絡履歴を管理するためのシンプルなデータベーステンプレートです。

 

Description 機能詳細

・ふりがなフィールドを使用したふりがなの自動入力。

サブフォームで詳細データ表示。

・ファンクションキーへのマクロを割り当て。

・印刷プレビュー時に表示するデータがない場合にメッセージを表示する。

 

Screenshot スクリーンショット

入力画面(Edit) ・・・レコードの新規作成・修正・削除等を行います。

f:id:BeansWorks:20170316224707p:plain

 

一覧画面(List) ・・・レコードを一覧で表示します。

f:id:BeansWorks:20170316224754p:plain

 

印刷画面(Print) ・・・印刷プレビューと帳票印刷をする画面です。

f:id:BeansWorks:20170316224808p:plain

 

Download ダウンロード

本書で作成するテンプレートを下記リンク先からダウンロードすることができます。データベースの動作を事前に確認しておくことで開発をスムーズに進めることができるでしょう。

 

2.新規データベースの作成

Accessでは始めにファイルを新規作成し名前をつけて任意の場所に保存する必要があります。

2-1.Accessを起動し[新規作成]画面でファイルを任意の場所に作成します。

f:id:BeansWorks:20170316225138p:plain

 

2-2.データベースが作成されテーブルが表示されました。

f:id:BeansWorks:20170316225156p:plain

 

3.テーブルの作成

レコードを保存するテーブルを作成しましょう。

3-1.「テーブル1」の上で右クリックしデザインビューを選択します。

f:id:BeansWorks:20170316225406p:plain

 

3-2.[名前を付けて保存]ウインドウが表示されたら「TBL_Contact」と入力し[OK]をクリックして保存しましょう。

f:id:BeansWorks:20170316225427p:plain

 

3-3.「フィールド名」と「データ型」を設定します。

f:id:BeansWorks:20170316230236p:plain

①「TBL_Contact」テーブルデザイン

f:id:BeansWorks:20170321233919j:plain

 

②同様に「TBL_memo」を下記項目で作成しましょう。

「TBL_memo」テーブルデザインf:id:BeansWorks:20170321233932j:plain

 

4.リレーションシップの作成

リレーションシップを作成すると2つ以上のテーブルを関連付けることができます。

4-1.[データベースツール]-[リレーションシップ]をクリックします。

f:id:BeansWorks:20170316225832p:plain

 

4-2.「リレーションシップ」ウインドウが開いたら[デザイン]-[テーブルの表示]をクリック。

f:id:BeansWorks:20170316225957p:plain

 

4-3.[テーブルの表示]ウインドウが開いたら「TBL_Contact」と「TBL_memo」を追加し閉じます。

f:id:BeansWorks:20170316230025p:plain

 

4-4.[リレーションシップの編集]で下記の様に設定しましょう。

f:id:BeansWorks:20170316230417p:plain

 

4-5.リレーションシップを確認し設定を保存します。

f:id:BeansWorks:20170316230823p:plain

 

5.フォームの作成(Edit)

レコードの登録や削除、修正するためのフォームをつくりましょう。

5-1.[作成]-[フォームデザイン]で空白のフォームを表示します。

f:id:BeansWorks:20170316230503p:plain

 

5-2.フォーム上で右クリックするとメニューが表示されるので[フォームヘッダー/フッター]をクリック。

f:id:BeansWorks:20170316230529p:plain

 

5-3.プロパティシートの[フォーム]-[幅]を25㎝に設定します。

 

5-4.ヘッダーとフッターの高さは1.5㎝、詳細の高さは10㎝にそれぞれ設定し保存する。

 

5-5.[名前を付けて保存]ダイアログでフォーム名を入力し[OK]をクリック。

 

f:id:BeansWorks:20170316230638p:plain

 

6.フォームのプロパティ設定

フォームデザインツールで[デザイン]‐[プロパティシート]を表示します。

6-1.フォームのプロパティシートを下記の通り設定します。

①[書式]

f:id:BeansWorks:20170321234000j:plain

7.フィールドの追加

フォームにフィールドを追加して画面をデザインしましょう。

7-1.デザインビューで「FRM_Edit」を開き、[デザイン]-[既存フィールドの追加]をクリックします。

f:id:BeansWorks:20170316231139p:plain

 

7-2.フィールドリストよりドラッグ・アンド・ドロップでフィールドを配置します。

f:id:BeansWorks:20170316231300p:plain

 

7-3.それぞれのフィールドにラベルを追加しておきましょう。

f:id:BeansWorks:20170316231431p:plain

 

8.ふりがなフィールドの設定

ふりがなフィールドを使うと自動的にふりがなを入力することができます。

8-1.「Name_F」のプロパティシートで[その他]-[ふりがな]で詳細設定のボタンをクリックします。

f:id:BeansWorks:20170316231631p:plain

 

8-2.[ふりがなウィザード]ウインドウでふりがなの入力先を指定する。

f:id:BeansWorks:20170316231706p:plain

 

8-3.同様に「Name_L」も設定を行いましょう。

 

 

9.タブオーダーの設定

タブオーダーを設定するとレコード入力の順番を指定することができます。

9-1.[デザイン]-[タブオーダー]をクリックします。

f:id:BeansWorks:20170316232706p:plain

 

9-2.タブオーダーを入れ替えて修正します。 

f:id:BeansWorks:20170316232730p:plain

 

10.サブフォームの作成

サブフォームを配置してフォーム上に2つのテーブル情報を表示することができます。

10-1.[デザイン]-[サブフォーム/サブレポート]をクリックしフォームに配置します。

f:id:BeansWorks:20170321234444p:plain

 

10-2.[サブフォームウィザード]が表示されたら[次へ]をクリック。 

f:id:BeansWorks:20170321234503p:plain

10-3.テーブル:TBL_memoを選択し、「IPdate」と「memo」のフィールドを選択します。

f:id:BeansWorks:20170321234517p:plain

 

10-4.[次へ]をクリック。

f:id:BeansWorks:20170321234535p:plain

 

10-5.サブレポートの名前を「SUB_Edit」に変更して[完了]をクリックします。

f:id:BeansWorks:20170321234548p:plain

 

10-6.サブフォームが配置されました。

f:id:BeansWorks:20170321234558p:plain

 

11.サブフォームのレイアウト調整

11-1.[SUB_Edit]をデザインモードで開き、幅を17㎝、フォームヘッダーの高さを0.5㎝、詳細の高さを1.5㎝に設定する。[書式]-[背景色]を白に変更して、ラベルとフィールドのレイアウトを調整しましょう。

f:id:BeansWorks:20170322231406p:plain

 

12.サブフォームのプロパティ設定

12-1.プロパティシートを下記の通り設定します。

f:id:BeansWorks:20170322231740j:plain

13.フォームの作成(List)

一覧(リスト)表示用のフォームを作成しましょう。

13-1.[作成]-[フォームウィザード]をクリック。

f:id:BeansWorks:20170322231834p:plain

 

13-2.「テーブル:TBL_Contact」のフィールドをすべて選択し、[次へ]をクリック。

f:id:BeansWorks:20170322231852p:plain

  

13-3.フォームのレイアウトは[表形式]を選択し、[次へ]をクリック。

f:id:BeansWorks:20170322231920p:plain

 

13-4.フォーム名を「FRM_List」に変更し、「フォームのデザインを編集する」オプションを選び[完了]をクリックする。

f:id:BeansWorks:20170322231936p:plain

 

13-5.デザインビューでラベルを修正し、レイアウトを調整します。  

f:id:BeansWorks:20170322232009p:plain

 

14. 表形式フォームで選択したデータを帳票形式で表示する

VBA(Visual Basic for Application)を使うとさらに細かな設定が可能になります。

14-1.FRM_Listをデザインビューで開き詳細パートを選択します。

14-2.次にプロパティシートの[イベント]-[クリック時]の項目で右端のボタンを押します。

f:id:BeansWorks:20170322232059p:plain

 

14-3.[ビルダーの選択]ウインドウで「コードビルダー」を選択して[OK]をクリック。

f:id:BeansWorks:20170322232119p:plain

 

14-4.VBAのウインドウが開いたらカーソルが点滅している場所に次のコードを入力し保存します。

---------------------------------------------------------------------

Private Sub 詳細_Click()

DoCmd.OpenForm "FRM_Edit", , , "[Company]&[Ref_NO]='" & Me.[Company] & [Ref_No] & "'"

End Sub

---------------------------------------------------------------------

f:id:BeansWorks:20170322232212p:plain

 

15.レポートの作成

レポート機能を使って印刷用の帳票を作ってみましょう。

15-1.[作成]-[レポート]-[レポートデザイン]をクリックします。

f:id:BeansWorks:20170322232247p:plain

 

15-2.プロパティシートの[データ]-[レコードソース]のボタンをクリック。 

f:id:BeansWorks:20170322232322p:plain

 

15-3.「テーブルの表示」ウインドウで「TBL_Contact」と「TBL_memo」を追加します。

f:id:BeansWorks:20170322232344p:plain

 

15-4.画面上部のフィールドリストから、下部のデザイングリッドにすべてのフィールドをドラッグ・アンド・ドロップで追加します。

f:id:BeansWorks:20170322232412p:plain

 

15-5.デザイン画面を閉じると下記メッセージが表示されるので[はい]をクリック。

f:id:BeansWorks:20170322232442p:plain

 

15-6.レポートデザイン画面に戻ったら[デザイン]-[グループ化と並び替え]をクリックしましょう。

f:id:BeansWorks:20170322232459p:plain

 

15-7. 「グループ化と並び替え」を下記の内容で設定。(Companyは表示しない)

f:id:BeansWorks:20170322232526p:plain

 

15-8.プロパティシートですべてのセクションの高さを1㎝に、幅は18㎝に設定します。

 

15-9.ページヘッダーに[デザイン]-[ラベル]を使って「Contact List」のラベルを配置します。

f:id:BeansWorks:20170322232711p:plain

15-10. [デザイン]-[既存のフィールドの追加]から「IPdate」と「memo」を追加します。

 

15-11. [デザイン]-[テキストボックス]で「Stationヘッダー」部分にテキストボックスを追加し、プロパティシートの[データ]-[コントロールソースを下記に変更します。

=[Company] & "  " & [Station] & "   " & [Post] & "   " & [Name_F] & " " & [Name_L] & " " & "様"

 

15-12.レポートに「RPT_List」と名前を付けて保存します。

f:id:BeansWorks:20170322232637p:plain

 

16. レポートで表示するレコードが無いときにメッセージを出す

16-1. 「RPT_List」をデザインビューで開きプロパティシートの[イベント]-[空データ時]の詳細設定ボタンをクリックします。

f:id:BeansWorks:20170322232803p:plain

 

16-2.「ビルダーの選択」ウインドウで「コードビルダー」を選択し[OK]をクリック。

f:id:BeansWorks:20170322232825p:plain

  

16-3.「Microsoft Visual Basic for Applications」のウインドウで次のコードを入力して保存します。

-------------------------------------------------------------------------------

MsgBox "対象レコードはありません", vbExclamation, "Contact List 印刷"

Cancel=True

---------------------------------------------------------------------------- 

f:id:BeansWorks:20170322232841p:plain

 

16-4.レコードが未入力の時にプレビューするとメッセージが表示されます。 

f:id:BeansWorks:20170322232857p:plain

 

17.マクロの作成

マクロを使って定型処理を自動化しましょう。

17-1. [作成]-[マクロ]をクリックします。

 

17-2.メニューから「サブマクロ」選択します。

 

17-3.サブマクロ名を{F1}とし、新しいアクションの追加で「メニューコマンドの実行」コマンドを「すべて閉じる」を選択したら、更に「フォームを開く」アクションを追加しフォーム名を「FRM_List」とします。

f:id:BeansWorks:20170322232921p:plain

 

17-4.同様にサブマクロ名を{F2}をフォーム名を「FRM_Edit」として作成します。

f:id:BeansWorks:20170322232959p:plain

 

17-5.マクロ名を「AutoKeys」にして保存します。

 

18.ボタンの作成

ボタンを配置して使いやすくしましょう。

18-1.FRM_Listをデザインビューで開き、[デザイン]-[ボタン]をクリックし、フォームヘッダーにボタンを配置します。

 

18-2.「コマンドボタンウィザード」ウインドウで、種類「その他」、ボタンの操作「マクロの実行」を選択し[次へ]をクリックします。f:id:BeansWorks:20170322233033p:plain

 

18-3.リストの中から「AutoKeys{F1}」を選択し[次へ]をクリック。

f:id:BeansWorks:20170322233104p:plain

 

18-4.[文字列]を「List」と入力し[次へ]をクリック。 

f:id:BeansWorks:20170322233115p:plain

 

18-5.ボタン名を「BTN_List」と入力して[完了]をクリックするとボタンが完成します。

f:id:BeansWorks:20170322233137p:plain

18-7.同様に「BTN_Edit」を作成しましょう。

 

18-8.「FRM_Edit」をデザインビューで開き、上記で作成した2つのボタンをコピーして貼り付けます。

 

18-9.コマンドボタンウィザードを活用して「FRM_LIst」には「レコードの操作-レコードの削除」ボタンを、「FRM_Edit」にはRPT_Listの「レポートの操作-レポートプレビュー」ボタンをそれぞれ追加します。

 

19.オプションの設定

アプリケーションの動作を変更することができます。

19-1. [ファイル]-[オプション]で「Accessのオプション」ウインドウを開き、[カレントデータベース]を選択したら、[アプリケーションオプション]-[ドキュメントウインドウオプション]-[ドキュメントタブを表示する]と、[アプリケーションオプション]-[ナビゲーション]-[ナビゲーションウインドウを表示する]のチェックを外します。 

f:id:BeansWorks:20170322233211p:plain

 

19-2. 「Accessのオプション」ウインドウで、[クライアントの設定]を選択し、[編集]-[確認]項目の[レコードの変更]、[オブジェクトの削除]、[レコードの変更]のチェックを必要に応じて外し[OK]をクリックします。

f:id:BeansWorks:20170322233231p:plain

 

19-3.下記メッセージが出るので一度ファイルを閉じて再度開くと設定が有効になります。

f:id:BeansWorks:20170322233248p:plain

 

 

 

© 2015 BeansWorks All rights reserved

 

Database Template #001A Address住所管理

テンプレートを参考にして簡単な住所録をつくってみましょう!

 

 

1.データベース概要

About this Template このテンプレートについて

住所録のレコードを入力して一覧表示や帳票印刷ができるシンプルなデータベーステンプレートです。

 

Screenshot スクリーンショット

入力画面(Edit) ・・・レコードの新規作成・修正・削除等を行います。

f:id:BeansWorks:20170309061657p:plain

 

一覧画面(List) ・・・レコードを一覧で表示します。

f:id:BeansWorks:20170311223001p:plain

 

印刷画面(Print)・・・印刷プレビューと帳票印刷をする画面です。

f:id:BeansWorks:20170311223018p:plain

 

Download ダウンロード

本書で作成するテンプレートを下記リンク先からダウンロードすることができます。データベースの動作を事前に確認しておくことで開発をスムーズに進めることができるでしょう。

2.新規データベースの作成

Accessでは始めにファイルを新規作成し名前をつけて任意の場所に保存する必要があります。

2-1.Accessを起動し[新規作成]画面でファイルを任意の場所に作成します。

f:id:BeansWorks:20170311230320p:plain

2-2.データベースが作成されテーブルが表示されます。

f:id:BeansWorks:20170311230339p:plain

3.テーブルの作成

レコードを保存するテーブルを作成しましょう。

3-1.「テーブル1」の上で右クリックしデザインビューを選択します。

f:id:BeansWorks:20170311233227p:plain

 

3-2.[名前を付けて保存]ウインドウが表示されたら「TBL_Address」と入力し[OK]をクリックして保存します。

f:id:BeansWorks:20170311233250p:plain

 

 3-3.「フィールド名」と「データ型」を設定します。

f:id:BeansWorks:20170311233634p:plain

①「TBL_Address」テーブルデザイン

f:id:BeansWorks:20170312212304j:plain

 

4.フォームの作成(Edit)

レコードの登録や削除、修正するためのフォームをつくりましょう。

4-1.[作成]-[フォームデザイン]で空白のフォームを表示します。

f:id:BeansWorks:20170311233818p:plain

4-2.フォーム上で右クリックして表示されるメニューで[フォームヘッダー/フッター]を選択してフォームヘッダーとフォームフッターを追加してから、[ファイル]-[上書き保存]をクリックし、名前を「FRM_Edit」と付けて保存しておく。

f:id:BeansWorks:20170311233854p:plain

5.フォームのプロパティ設定

5-1. フォームデザインツールの[デザイン]‐[プロパティシート]を表示し、フォームのプロパティシートを下記の通り設定します。

f:id:BeansWorks:20170312212446j:plain

 

6.フィールドの追加

フォームにフィールドを追加して画面をデザインしましょう。

6-1.デザインビューで「FRM_Edit」を開き、[デザイン]-[既存フィールドの追加]をクリックします。

f:id:BeansWorks:20170311234024p:plain

 

6-2.フィールドリストよりドラッグしてフィールドを配置します。

f:id:BeansWorks:20170311234042p:plain

 

6-3.それぞれのフィールドのラベルを修正します。

f:id:BeansWorks:20170312101610p:plain

7.タブオーダーの設定

タブオーダーを設定するとレコード入力の順番を指定することができます。

7-1.[デザイン]-[タブオーダー]をクリックします。

f:id:BeansWorks:20170311234101p:plain

 

7-2.必要に応じてタブオーダーを入れ替えて修正します。

f:id:BeansWorks:20170312101811p:plain

8.フォームの作成(List)

一覧(リスト)表示用のフォームを作成しましょう。

8-1.[作成]-[フォームウィザード]をクリック。

f:id:BeansWorks:20170312102508p:plain

 

8-2.「テーブル:TBL_Contact」のフィールドをすべて選択し、[次へ]をクリック。

f:id:BeansWorks:20170312105840p:plain

 

8-3.フォームのレイアウトは[表形式]を選択し、[次へ]をクリック。

f:id:BeansWorks:20170312105904p:plain

 

8-4.フォーム名を「FRM_List」に変更し、「フォームのデザインを編集する」オプションを選び[完了]をクリックする 

f:id:BeansWorks:20170312105924p:plain

 

8-5.デザインビューでラベルを修正し、レイアウトを調整します。 

f:id:BeansWorks:20170312105953p:plain

 

9.コードビルダーを活用する

VBAを使うとさらに細かな設定が可能になります。Listでレコードをクリックすると、Editフォームが開く機能を追加してみましょう。

9-1.FRM_Listをデザインビューで開き詳細パートを選択します。

f:id:BeansWorks:20170312110229p:plain

 

9-2.次にプロパティシートの[イベント]-[クリック時]の項目で右端のボタンを押します。

f:id:BeansWorks:20170312110247p:plain

 

9-3.[ビルダーの選択]ウインドウで「コードビルダー」を選択して[OK]をクリック。

9-4.VBAのウインドウが開いたらカーソルが点滅している場所に次のコードを入力し保存します。

---------------------------------------------------------------------

Private Sub 詳細_Click()

DoCmd.OpenForm "FRM_Edit", , , "[Company]&[Ref_NO]='" & Me.[Company] & [Ref_No] & "'"

End Sub

---------------------------------------------------------------------

f:id:BeansWorks:20170312110302p:plain

 

10.レポートの作成

レポートで印刷用の帳票を作ってみましょう。

10-1.[作成]-[レポート]-[レポートデザイン]をクリックします。

f:id:BeansWorks:20170312111438p:plain

10-2.プロパティシートの[データ]-[レコードソース]のボタンをクリック。

f:id:BeansWorks:20170312130021p:plain

10-3.「テーブルの表示」ウインドウで「TBL_Contact」と「TBL_memo」を追加します。

f:id:BeansWorks:20170312130059p:plain

10-4.画面上部のフィールドリストから、下部のデザイングリッドにすべてのフィールドをドラッグ・アンド・ドロップで追加します。

f:id:BeansWorks:20170312130120p:plain

 10-5.デザイン画面を閉じると下記メッセージが表示されるので[はい]をクリック。

f:id:BeansWorks:20170312130241p:plain

10-6.レポートデザイン画面に戻ったら[デザイン]-[グループ化と並び替え]をクリックします。

f:id:BeansWorks:20170312130257p:plain

10-7. 「グループ化と並び替え」を下記の内容で設定します。(Companyは表示しない)

f:id:BeansWorks:20170312130316p:plain

10-8.プロパティシートですべてのセクションの高さを1㎝に、幅は18㎝に設定します。

10-9.ページヘッダーに[デザイン]-[ラベル]を使って「Contact List」のラベルを配置します。

10-10. [デザイン]-[既存のフィールドの追加]から「IPdate」と「memo」を追加します。

10-11. [デザイン]-[テキストボックス]で「Stationヘッダー」部分にテキストボックスを追加し、プロパティシートの[データ]-[コントロールソースを下記に変更します。

 

=[Company] & "  " & [Station] & "   " & [Post] & "   " & [Name_F] & " " & [Name_L] & " " & "様"

 

10-12.レポートに「RPT_List」と名前を付けて保存しましょう。

f:id:BeansWorks:20170312130337p:plain

 

11.マクロの作成

マクロを使って定型処理を自動化しましょう。

11-1. [作成]-[マクロ]をクリックします。

f:id:BeansWorks:20170312130747p:plain

 

11-2.メニューから「サブマクロ」選択します。

f:id:BeansWorks:20170312130859p:plain

 

11-3.サブマクロ名を{F1}とし、新しいアクションの追加で「メニューコマンドの実行」コマンドを「すべて閉じる」を選択したら、更に「フォームを開く」アクションを追加しフォーム名を「FRM_List」とします。

f:id:BeansWorks:20170312130930p:plain

11-4.同様にサブマクロ名を{F2}をフォーム名を「FRM_Edit」として作成します。

f:id:BeansWorks:20170312130945p:plain

11-5.マクロ名を「AutoKeys」にして保存しましょう。

 

12.ボタンの作成

ボタンを配置して使いやすくしましょう。

12-1.FRM_Listをデザインビューで開き、[デザイン]-[ボタン]をクリックし、フォームヘッダーにボタンを配置します。

f:id:BeansWorks:20170312131140p:plain

12-2.「コマンドボタンウィザード」ウインドウで、種類「その他」、ボタンの操作「マクロの実行」を選択し[次へ]をクリック。

f:id:BeansWorks:20170312131156p:plain

 

12-3.リストの中から「AutoKeys{F1}」を選択し[次へ]をクリック。 

f:id:BeansWorks:20170312131209p:plain

 

12-4.[文字列]を「List」と入力し[次へ]をクリック。

f:id:BeansWorks:20170312131227p:plain

 

12-5.ボタン名を「BTN_List」と入力して[完了]をクリックするとボタンが完成します。

f:id:BeansWorks:20170312131246p:plain

12-6.同様に「BTN_Edit」を作成しましょう。

f:id:BeansWorks:20170312131454p:plain

12-7.「FRM_Edit」をデザインビューで開き、上記で作成した2つのボタンをコピーして貼り付けます。

 

12-8.コマンドボタンウィザードを活用して「FRM_LIst」には「レコードの操作-レコードの削除」ボタンを、「FRM_Edit」にはRPT_Listの「レポートの操作-レポートプレビュー」ボタンをそれぞれ追加します。

 

13.オプションの設定

アプリケーションの動作を変更することができます。

13-1. [ファイル]-[オプション]で「Accessのオプション」ウインドウを開き、[カレントデータベース]を選択したら、[アプリケーションオプション]-[ドキュメントウインドウオプション]-[ドキュメントタブを表示する]と、[アプリケーションオプション]-[ナビゲーション]-[ナビゲーションウインドウを表示する]のチェックを外します。

f:id:BeansWorks:20170312131533p:plain

 

13-2. 「Accessのオプション」ウインドウで、[クライアントの設定]を選択し、[編集]-[確認]項目の[レコードの変更]、[オブジェクトの削除]、[レコードの変更]のチェックを必要に応じて外し[OK]をクリック。

f:id:BeansWorks:20170312131603p:plain

13-3.下記メッセージが出るので一度ファイルを閉じて再度開くと設定が有効になります。

f:id:BeansWorks:20170312131617p:plain

 

 

 

 

© 2015 BeansWorks All rights reserved

オートナンバー型フィールドの連番を振りなおす

1.オートナンバー型のフィールドの値は追加クエリを使って1から振りなおすことが可能です。

f:id:BeansWorks:20150206010757p:plain

 

2.ナビゲーションウインドウで対象のテーブルを指定し、右クリックでコピーする。

f:id:BeansWorks:20150206010814p:plain

 

3.もう一度右クリックで貼り付けすると「テーブルの貼り付け」ダイアログが表示されるので「貼り付けの設定」で[テーブル構造のみ]を指定して[OK]をクリックする。

f:id:BeansWorks:20150206010830p:plain

 

4.[作成]-[クエリデザイン]をクリックする。

f:id:BeansWorks:20150206010851p:plain

 

5.「テーブルの表示」ウインドウで連番を振りなおしたいレコードの入っているテーブルを指定して[追加]ボタンをクリック後、ウインドウを閉じる。

f:id:BeansWorks:20150206010918p:plain

 

6.オートナンバー型のフィールド以外をすべてフールドリストからデザイングリッドへドラッグする。

f:id:BeansWorks:20150206010933p:plain

 

7.[デザイン]-[追加クエリ]ボタンをクリックすると[追加]ウインドウが開くので[テーブル名]で先ほどコピーしたテーブルを選択し[OK]をクリックする。

f:id:BeansWorks:20150206010945p:plain

 

8.[デザイン]-[実行]をクリックするとコピーしたテーブルに連番が振りなおされたレコードが追加される。

f:id:BeansWorks:20150206010955p:plain

 

9.テーブルをすべて閉じてから、ナビゲーションウインドウでコピーしたテーブルを右クリックし[名前の変更]で名前を元のテーブル名に変更する。

f:id:BeansWorks:20150206011013p:plain

 

10.下記のダイアログが表示されるので[OK]をクリックするとテーブルが置き変わる。

f:id:BeansWorks:20150206011032p:plain

 

 

住所入力支援機能で自動入力後にカーソルを末尾に移動する

 住所入力支援機能をつかって自動入力した住所の続きを入力しやすいようにカーソルを移動します。

1.プロパティシートで[データ]-[更新後処理]で詳細設定のビルドボタンをクリック

f:id:BeansWorks:20150203235736p:plain

 

2.「ビルダーの選択」ウインドウで「コードビルダー」を選択し[OK]をクリック

f:id:BeansWorks:20150203235759p:plain

 

3.「Microsoft Visual Basic for Applications」のウインドウで次のコードを入力して保存する

------------------------------------------------------------------------

Me!Street.SetFocus

Me!Street.SelStart = Len(Me.Street)

------------------------------------------------------------------------

f:id:BeansWorks:20150203235955p:plain

 

 

Excelインポート時のデータ型変換エラーへの対応

Excel のデータをインポートする時にデータ型変換エラーというメッセージが表示される場合があります。AccessではExcelレジストリで指定されてる行までデータを読み取ってデータ型を決定しているので指定された行以降に違う型のデータが入っているとエラーとなってしまいます。そこでTypeGuessRows のレジストリ値を変更してエラーが出ない様に対処します。

 

TypeGuessRows レジストリ値は有効範囲 が 0 〜 16で、既定値が8となっています。この値が1 の場合は先頭行から1 行目まで、16の場合は16 行目までスキャンされ、既定値の設定のままであれば、8 行目までスキャンされることになります。これを0に変更すれば先頭行から指定可能な最大行数までスキャンされエラーを回避することが可能です。

 

参考

Access にて 複数のデータ型が混在する Excel のデータ (XLS 形式 または XLSX形式) をインポートするときに、エラー メッセージ "データ型変換エラー" が表示される場合がある