家計簿をつくろう (第3部
 目次(クリックしてね)
メニュー
へ戻る
§1 家計簿をつくりたい
§2 家計簿の考え方と設計の基本
§3 .家計簿の進め方とメインパネル
§4 .ACCESSの基本操作とメインパネルの操作
§5 補助簿の項目見直しとマスタの作成
§6 費目マスタと摘要マスタ  作業中のメール往来
§7 インポートの活用  費目ますたと摘要マスタ 作業中のメール往来
§8 費目マスタと摘要マスタの完成 &練習帳
メニュー
へ戻る
§9 家計簿のデータ入力
家計簿のデータ入出力設計
§10 家計簿データ日常処理(ウィザード)
§11 家計簿データ日常処理1(カストマイズ 整形)

§12 家計簿セータ日常処理2(項目別編集)
§13 家計簿データ日常処理3(項目別編集)
§14 家計簿データ日常処理 追補


KLのヒデ様    家計簿セータ日常処理2(項目別編集)

§2項目別編集                                   (MM家計簿082.docの抄)    

   3.3.2 仕上(カストマイズ)
      §1整形              済み
      §2項目別編集
         1.カストマイズの概要
           2.作業予定
            3.集基本ルールとフォーム操作の復習
            4.家計簿入力の項目別編集


1.カストマイズの概要
  いよいよ8合目、胸突き八丁だ。
  このカストマイズ編集が完了すると、能率的ですっきりとした、なるほどACCESSの入力画面ができあがる。
  作業は印刷も含めて全体の7割相当がキープされよう。
  先ず、図3-7 ウィザ−ド段階とカストマイズ終了後の比較イメージを比較し、作業の全体を理解しよう。

  F_家計メイン
   @[伝票番号]:自動ナンバリング機能により入力は不要。
   A[日付]:[+][−]のコマンドボタンで日付をコントロール。
  F_家計明細
   B[伝票番号]:表示不要
   C[費目コード]:コンボボックス化し、[費目名]は入力不要
   D[摘要コード]:コンボボックス化し、[摘要]に転送
   E[摘要]:D+自由入力
   FF_家計明細の移動ボタンは不要


図3-7 ウィザ−ド段階とカストマイズ終了後の比較イメージ
【ウィザ−ド段階】



【仕上げ段階】

  2.作業予定
  (1) マクロが頻出するので、フォームとマクロの関係、マクロの操作、アクション使用法などを学習する。
                                             別紙 基礎講座3 マクロの用法
(省略)
  (2) カストマイズ作業は、細区分し一つひとつクリアする。

   ステップ1 F_家計メイン     kakeisub(1.12)
    ステップ2 F_家計明細     kakeisub(1.14)
   ステップ3 テストデータ入力  kakeisub(1.16)
    
 ステップ4 最終仕上げ     kakeisub(2.10)

3.編集基本ルールとフォーム操作の復習          
   項目別編集のなかでは、フォームで使用するテキスト、コマンドボタンなどのコントロールを総称して項目という。
   項目の画面表示は、項目の性格に応じて統一した編集規格を作成する。
   プロパティは「プロパティシート」で全て設定できるが、ツールバーでできるものはツールバーを優先使用する。

  (1)編集基本ルール          MM家計簿08.doc 3.1 テーブル定義 参照

  区分         例          枠   フロント文字   設定

文字サイズ                        10ポイント     太字 注1.
入力項目        収入金額     凹枠   青字
ラベル、表示項目   費目名       なし   黒字
不要項目        明細行の伝票番号                不可視

内容変更不可項目  費目名                       編集不可
テーブル利用項目   費目コード・費目名               コンボボックス

(2)フォームプロパティ、ツールバー、ツールボックスの復習   練習帳 参照

プロパティの種類
 フォームプロパティ・・・・フォーム全体の制御 例:ポップアップ
                  ページプロパティ フォームヘッダー
                * 詳細・・・・特に注記がなければ詳細部のプロパティをさす。
                  フォームフッター
コントロールの種類  ツールボックス
                  ラベル
                * ラベル&テキストボックス
                * コマンドボタン
                *コンボボックス
                * オプションボタン・・・・
★プロパティの使い分け
 ツールバー(T):フォント、B,I,U、文字配列、背景、境界線、前景(文字)、立体表示
 ハンドル操作(H):各項目;左位置、上位置、幅、高さの大雑把な位置・サイズ
 プロパティ(P)位置・サイズの精密仕上げ、書式、初期値、編集、可視、
            更新後処理、クリック時などのイベント・・・・・ 

リストボックスとビルダの活用
プロパティ入力ボックスの右端(▼)・・・リストボックスと右欄外の()・・・式ビルダ


  4.家計簿入力の項目別編集
   操作のポイント
    * [項目]修正編集ができたら、その都度一項目づつ実行モードで適否をチェックする。
    * 文字サイズの10P、B指定はグループ操作でまとめて変更する。

(1)F_家計メイン           表1 F_家計メインのプロパティ編集 参照

1. 伝票番号






2.日付





  [+][−]

表示項目:編集不可
[日付]入力後、自動ナンバリング機能により[伝票番号]を取得。
表示項目だから、プロパティ:[使用可能][編集ロック]を修正し、編集不可
とする。
カーソルはこの項目を自動的にスキップし、次の項目へ移動する。
[伝票番号]はユニークで同一コードはない。

表示項目:編集不可
[日付]は先ず、関数=Date()で「本日」を規定値(初期値)としてセットする。
別に日付調整[+][−]ボタンを新設し、ボタン操作で日付を変更する。
日付調整は関数=ScrollDate()を使用し、モジュールのプログラムで制御する。
利用者はフォームプロパティのパラメータを指定どおり変更すればよい。


マウス操作による入力項目       
[+]をクリックすると[日付]が1日進む。
[−]をクリックすると[日付]が1日戻る。

実演操作:F_日付調整を開き、   の[+],[-]をクリックする。
    [日付]が進、退を確認する。
    図3-8日付操作のモデル参照
取込手順:F_日付調整の「スクロール(日)行」の[+],[-]をコピーし、
       F_家計メイン
に貼り付ける。

図3-8日付操作のモデル


 表1 F_家計メインのプロパティ編集                変更部分のみ記載
    操作のポイント
     * 使用可能,編集ロックはワンセットセット
     * 左位置、右位置は必須

プロパティ

テキスト

テキスト

コマンド +

コマンド

名前
コントロール
ソース
標題(コマンド)
書式
規定値
使用可能
編集ロック
左位置 
上位置 

高さ
クリック時

伝票番号
伝票番号

0000

いいえ
はい


1.2

日付
日付

日付(S)
=date()
いいえ
はい


2.3

DAYUP

日付送り








=ScrollDate
(
F_家計メイン,
[日付],1)

DAYDOWN

日付戻し








=ScrollDate
(F_家計メイン,
[日付],-1)

 (2)F_家計明細            表2 F_家計明細のプロパティ編集 参照

1.伝票番号



2.  明細番号


3.  費目コード



4. 費目名


5. 収入金額



6.  支払金額

7.  摘要コード


8.  摘要

非表示:不可視
明細行[伝票番号]は、2つのフォームの連結状態を示す機械サイドの管理項目で、
画面上の表示は不要。


表示項目:編集不可
[明細番号]は明細行の自動ナンバリング

入力項目 コンボボックス設定
費目コードはリストから該当項目を選択し、省力化をはかる常套手法。
費目コードをテキストからコンボボックスに変換する操作は表2ポイント参照

表示項目:編集不可
[費目名]は費目コード入力で自動取得から編集不要。

入力項目
金額は、小数点以下2けたの固定表示。例:5,666.35
円〜銭単位までの入力ができる。

[収入金額]と同じ

入力項目
該当摘要登録があれば摘要コードを入力し、登録がなければ[摘要]に移動

入力項目
[摘要]は自由入力が原則。
ただし、摘要コードで取得された摘要内容(例:○○月 電気代)にデータを
付加入力できる。


 表2F_家計明細のプロパティ編集                変更部分のみ記載
    操作のポイント
      * 費目コード:テキストからコンボボックスの変換操作

      テキストとラベルの位置決め、サイズ決めはグループ操作で
      
ラベルの文字列はテキストの幅により小さいポイントまたは略称で
      * F_家計明細:リンク子フィールド、リンク親フィールドの確認
      * 移動ボタンの削除は、フォームプロパティで
      * フォーカス取得時フォーカス喪失時はカーソルのカラーによる移動表示・・・別途提示

プロパティ

テキスト

テキスト

テキスト

テキスト

名前
コントロールソース
値集合タイプ  
値集合ソース 
列数       #
列みだし    #
列幅       #
連結列     #
リスト行     #
リスト幅     #
可視
使用可能
編集ロック
左位置 
上位置 

高さ
フォーカス取得時
フォーカス喪失時

伝票番号
伝票番号








いいえ





0.2

明細番号
明細番号








いいえ
はい



1.2

費目コード
費目コード
テーブル/クエリ
T_費目マスタ
2

0.5,2
1
8
3

費目名
費目名








いいえ
はい



3

項目の続き 収入金額 支払金額  支払金額  摘要コード 摘要)  省略

  3.4 テストデータ入力      次回

  3.4.1 TAB と 入力順序
  3.4.2 テストデータ入力 

  3.5 最終仕上げ         未
    ボタンの設定とマクロの追加


KLのヒデ様    家計簿データ日常処理3(項目別編集)

§2項目別編集                                    (MM家計簿083.doc の抄)
   3.3.2 仕上(カストマイズ)
      §1整形              済み
      §2項目別編集         今回続き

3.4 テストデータ入力
    最新版;MM家計簿.mdb (Ver1.12)のKLの家計簿入力の再現イメージは下図のとおり。 
    素早いレスポンスだったが、頂上近くの登坂はいささか厳しい。
    ここからは一般的な教科書ではなく、現在作成中のmdbをみながら個別に対応する。
    修正の結果は、インポート法によるKakeisub(1.122)でファイル添付。

図【仕上げ(Ver1.12)段階】

 3.4.1 TABコントロールと入力順序
    [TAB]キーの機能:[TAB]キーを押すと、フォームの項目順にカーソルが移動する。

問題点:家計簿入力画面の最初の位置は[明細番号]でなく[]または[]が正解
説明:[]、[]は後から挿入したためタブ(カーソル)が最後になっている。
対応:表示(V)〜タブオーダー(B)のタブオーダーの設定[DAYUP]、[DAYDOWN]
    [日付]の後に移動させる。
操作:タブオーダーの設定のフィールド欄の左端を反転〜再クリック〜マーク表示のとき
    上部へドラグ&ドロップ

3.4.2 修正項目
     1.共通
      文字サイズの基準変更

問題点:ラベルが全般的に不揃い。ポイントが大きすぎる?
対応:ラベル(見出し)のポイントは原則9ポに変更   

2.F_家計メイン
      形式修正

修正:ラベル(見出し)の表示と位置揃い
       [+][−]  幅*高さを0.5o(やや大きめ)

3.F_家計明細
      費目コードと費目名

問題点:費目コードを入力しても、費目名が表示されない。
原因:クエリが不備
対応:Q_家計明細T_費目マスタをリンクさせる。
操作:@F_家計明細のコントロールソース:Q_家計明細をビルダで開く。
    AQ_家計明細T_費目マスタを挿入する。(ツールバー:テーブルの表示)
    Bクエリ下欄:グリッドにT_費目マスタ[T_費目名]ドラグ&ドロップ
確認:F_家計明細に戻ってテスト

プロパティ:使用可能・編集ロック

試行:[TAB]キーをゆっくり続けて押す。
問題点:入力不可項目に[TAB]がフォーカスされる。
対応:使用可能・編集ロックを修正する。(2つで1組)   

      横スクロールバー

問題点:横スクロールは不要
対応:F_家計明細の項目を[摘要名]まで1画面に納める。
操作:@F_家計明細の枠を左右に広げる。
    A
F_家計明細の項目を順次、左に詰める。

      手入力項目、表示項目のルール

修正:入力項目・・・・凹枠、青色字
    表示項目・・・・普通枠、黒色字

金額の書式

問題点:「\」表示は不要。
対応:@書式:標準 小数点:2
    Aツールボックス〜直線を0,000.00 の「.」の位置に挿入(縦線|)

3.4.3 テストデータ入力    次回
  3.5 最終仕上げ         未
    ボタンの設定とマクロの追加
      [新規入力]など
      [一覧表]
      カラー仕上げ


§2項目別編集                                                     (MM家計簿084.doc の抄)
 3.3.2 仕上(カストマイズ)
      §1整形                済み
      §2項目別編集           今回続きの続き

   修正の結果は、Kakeisub(1.122)で受信し、MM家計簿.mdb)Ver1.120)にインポートした。
   下表 Ver1.122 参照

F_家計メイン【仕上げ(Ver1.122段階】



(1)前回指摘の修正項目と評価

項目

評価

3.4.1 TABコントロールと入力順序

OK

3.4.2 修正項目
1.共通 ラベルが全般的に不揃い。


OK

2.F_家計メイン
 ラベル表示と位置揃い
  [+][−]  幅*高さを0.5o(やや大きめ)


OK
OK [-]を微量右にづらす。

3.F_家計明細
 費目コードを入力しても、費目名が表示されない。
 入力不可項目に[TAB]がフォーカスされる。
 横スクロールは不要
 入力項目・・・・凹枠、青色字
 表示項目・・・・普通枠、黒色字
 金額:「\」表示は不要、書式:小数点
     縦直線(|)


Q_家計明細 OK
OK
OKだが、摘要が画面からはみ出し
未完:費目コード、摘要コード
    摘要名も凹枠、青色
OK
OK
未完:支出にも縦線を(青色)

3.4.3 テストデータ入力 
     そのあとテストデータを入力し、正しいデーアが得られるか検証する。

  3.5 最終仕上げ 
    入力画面全体のレイアウト、バックカラーの設定、[新規追加]、[一覧表]の
    機能を加える。(前頁図 参照)

(1)画面のレイアウト調整など

1.全体のレイアウト調整
  @<A><B>によりF_家計明細の高さを小さくする。
  AF_家計明細を下に下げる。
  B[伝票番号]、[日付]ややを下に下げる。

2.[伝票番号]、[日付]にはツ−ルボックスから四角形を
 選択し、「枠」で囲む。(見映え)

全体を下方に移動させる。

3.ツールバーから「塗り潰し」を選択 し、F_家計メインおよび
 F_家計明細に背景色つける。

(2)[新規入力]ボタン

入力画面下欄;ナビゲーターの右端「▼*」クリックで、2件目以降の新規レコードが表示される。
この操作は▼が並んでいて紛らわしいので、専用の[新規追加]ボタンを新設する。
手順:
  @マクロ:M_家計簿入力

マクロ名   アクション     引数
新規追加  レコードの移動  種類     同名前    レコード
                    フォーム  F_家計メイン 新しいレコード

 AF_家計メイン[新規追加]ボタンを作成する。 
  
   B[新規追加]のプロパティ:クリック時を@のマクロに関連付ける。

(3)[一覧表]ボタン

F_家計メインF_家計明細をリンクし、Excel形式の家計明細表を出力する。
データベースは、単体のF_家計メイン、単体のF_家計明細だけでは全体の一覧性表示は
できない。
これだけみるとデータベースは不完全のように見えるが、データの一元性、発展性、共有性など
データの管理面で優れた特徴を発揮する。
この一覧表は読み取り専用(更新不可)とする。

手順:
  @クエリ:にテーブルを追加し、Q_家計明細表を作成する。
    T_家計メイン、T_家計明細、T_費目マスタ
    
  AQ_家計明細表をプレビューで実行し、結果を確かめる。

  Bフォーム:F_家計明細表を作成する。

  ウィザード選択

@テーブル/クエリの選択 Q_家計明細表
A選択フィールド      >> (全部)
Bデータの表示方法    BY
T_家計明細
Cレイアウト         表形式
Dスタイル          標準
Eフォーム名         F_家計明細表


次へ
次へ

次へ
次へ
完了

Cフォームのレイアウトとプロパティを設定する。

1.フォームヘッダーを下に広げ、ラベル:[家計明細一覧表]を追加する。
2.詳細項目ごとの巾を、内容をみなが拡大・縮小調整する。

3.フォームプロパティを修正する。

スクロールバー     垂直
レコードセレクター    いいえ
移動ボタン        いいえ

ポップアップ        はい
作業ウィンドウの固定 はい 

Dマクロを作成する。
   マクロ:M_家計簿入力

マクロ名        アクション    引数
家計明細表を開く  フォームを開く  フォーム名      データモード
                     F_家計明細表  読み取り専用
            最大化

EF_家計メイン[一覧表]ボタンを作成し、プロパティ:クリック時にDのマクロに関連づける。

  F[一覧表]をクリックし、明細表を確認する。

(4)条件に応じた項目編集

現在、[収入金額][支出金額]は費目に関係なくどちらにも入力できる。
誤って、費目が収入であるにもかかわらず、支出に入力される可能性がある。
[費目コード]によってカーソルが収支金額欄に自動的に選択移動する技法を示す。

仕様  費目コード 10-49 → 収入金額にカーソル移動(支出金額は使用不可)
      費目コード 52-99 → 支出金額にカーソル移動(収入金額は使用不可)
  記述 マクロに、条件とそれに対応したプロパティ;使用可能、編集ロックを設定する。

手順:
  @マクロを作成する。
    マクロ:M_家計簿入力   次頁、★★★ 条件式等の作成 ★★★ 参照

マクロ名        条件      アクション
収支金額の制御   条件A     値の代入A
             条件B     値の代入B

AF_家計明細;[費目コード]のプロパティ:更新時に@のマクロに関連づける。

  B[費目コード]を入力し、収支金額へのカーソル移動を確認する。

★★★ 条件式等の作成 ★★★
  条件式、値の代入のアイテム、式等の入力は類似項目の類似項目のコーピーまたは、
  次頁ビルダーに従う。

1.フォーム項目(コントロール)の名前 例示
 単体画面;[Forms]![F_家計メイン]![日付]
 親子画面;[Forms]![F_家計メイン]![F_家計明細].[Form]![費目コード]
2.条件
  条件式の一般的表記  ・・・ は記述が2行以上あるときの同上の意味
  条件A    アクション11
  ・・・      アクション12
  ・・・      マクロの中止
  条件B         アクション21
  ・・・      アクション22

条件A;[Forms]![F_家計メイン]![F_家計明細].[Form]![費目コード]>=10 And
        [Forms]![F_家計メイン]![F_家計明細].[Form]![費目コード]<=49
   条件B;[Forms]![F_家計メイン]![F_家計明細].[Form]![費目コード]>=50 And
        [Forms]![F_家計メイン]![F_家計明細].[Form]![費目コード]<=99
3.アクション:値の代入のコントロールの記述 例示
 アイテム(分子)        式(分母)
 可視     [項目].Visible   はい(True Or Yes) いいえ(False OR No)
 使用可能   [項目].Enabled    はい(True Or Yes) いいえ(False OR No)
 編集ロック [項目].Locked    はい(True Or Yes) いいえ(False OR No)
4.値の代入のアイテム(分子)と式(分母)の記述
 値の代入A [Forms]![F_家計メイン]![F_家計明細].[Form]![収入金額].Enabled
         True
         [Forms]![F_家計メイン]![F_家計明細].[Form]![収入金額].Locked
         True
         [Forms]![F_家計メイン]![F_家計明細].[Form]![収入金額].Enabled
         False
         [Forms]![F_家計メイン]![F_家計明細].[Form]![収入金額].Locked
         False

 値の代入B 真偽が「値の代入A」の逆

 マクロからビルダーの使用法 (省略)


KLのヒデ様        家計簿データ日常処理 追補

メイン作業の家計簿入力がほぼできあがりました。最終段階です。
追補版で個別にチェックしながらフォームを仕上げよう。

追補版                                             ( MM家計簿085.doc の抄)

 (1)前回指摘の修正項目と評価

項目

評価

3.4.1 TABコントロールと入力順序

OK

3.4.2 修正項目
 1.共通 ラベルが全般的に不揃い。


OK

2.F_家計メイン
 ラベル表示と位置揃い
  [+][−]  幅*高さを0.45o(やや大きめ)


OK
OK

3.F_家計明細
 費目コードを入力しても、費目名が表示されない。
 入力不可項目に[TAB]がフォーカスされる。
 横スクロールは不要
 入力項目・・・・凹枠、青色字
 表示項目・・・・普通枠、黒色字
 金額:「\」表示は不要、書式:小数点
     縦直線


OK
OK
OK
OK
OK
OK
未完:支出にも縦線を(青色)

3.4.3 テストデータ入力
     費目マスタの入力 OK
     テスト入力    OK

 3.5 最終仕上げ      
(1)画面のレイアウト調整など

1.全体のレイアウト調整
 @F_家計明細の「一行の高さ」を小さくする。
 AF_家計明細を下に下げる。
 B[伝票番号]、[日付]ややを下に下げる。

2.[伝票番号]、[日付]にはツ−ルボックスから四角形を
 選択し、「枠」で囲む。(見映え)

全体を下方に移動させる。
未完
OK
OK

未完

3.ツールバーから「塗り潰し」を選択 し、F_家計メインおよび
 F_家計明細に背景色つける。

未完のまま保留

(2)[新規追加]ボタン(Ver2.11)           図 M_家計入力A参照

@マクロ:M_家計簿入力を作成する。

マクロ名  アクション    引数
新規追加  レコードの移動  種類    同名前    レコード
               フォーム  F_家計メイン 新しいレコード
      
コントロールの移動 伝票区分

AF_家計メイン[新規追加]ボタンを作成する。

B[新規追加]のプロパティ:クリック時を@のマクロに関連づける。
 
   データ入力操作の注意点

伝票区分・・・・無条件に[Enter]キーする。
日付・・・・変更あるとき [+]Or[-]をクリック
       ないとき マウスまたは[TAB]キーで明細行の[費目コード]へ
      カーソルを移動させる。

(2-1)[新規追加]ボタンの修正             図 M_家計入力BD参照

(3)条件に応じた項目編集(Ver2.11)         図 M_家計入力C参照

@マクロを作成する。
   マクロ:M_家計簿入力   次頁、★★★ 条件式等の作成 ★★★ 参照

マクロ名        条件      アクション
収支金額の制御   条件A     値の代入A
             条件B     値の代入B


AF_家計明細;[費目コード]のプロパティ:更新時に@のマクロに関連づける。

B[費目コード]を入力し、収支金額へのカーソル移動を確認する。

F_家計メイン、F_家計明細M_家計入力(下図)

項目

イベント

マクロ名

伝票区分

キークリック時

伝票番号取得

B D

費目コード

更新後処理

収支金額の移動

C

新規追加

クリック時

新規入力

A

M_家計入力