- ベストアンサー
Accessで人事データベースを作成する手順と方法
- Accessで人事データベースを作成する方法を教えてください。
- メインフォームに「社員検索」というボタンを作成し、ボタンをタップすると入力欄が表示されます。ひらがなで社員の苗字を入力すると、該当の苗字の従業員が表示されます。従業員を選択すると、その従業員の基本情報のフォームが表示されます。
- 従業員Bの基本情報のフォームを開いている状態で、フォーム内にある「詳細」ボタンを選択すると、従業員Bの詳細フォームが開きます。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>従業員の人数は→50名です。 ☆単票じゃなく、帳表形式のフォーム(一人1行)フォームをフリガナ順に表示 数回のスクロールでOK >Accessのヴァージョンは→Access2016です。 ☆幸い昨年夏にAccess2016をインストールしました。 使い勝手がよくなっています。 ---------------------------------------------------------------------------- Accessでは情報はテーブルに保存します。 従ってテーブルの設定からはじめます。 画像をご覧ください 取り敢えず。M_部署マスタ、M_従業員マスタ T_詳細の3つのテーブルをお互いに関係付けします。 この関係付けをリレーションシップと呼びます。 項目の追加は何時でも出来ますので、項目は以下から始めます。 尚、テーブルの最初のIDは各設定の最終で作成されますんで2項目めからです ・M_部署 ID:オートナンバー型 部署名:テキスト型、IME入力モード=ひらがな、インデックス重複無 フリガナ:テキスト型(半角カタカナ) ふりがなの右端…から自動ふり仮名 ・M_従業員 ID:オートナンバー型 従業員名:テキスト型、IME入力モード=ひらがな、インデックス重複無 部署ID:数値型、長整数型 テーブル設計の下段のルックアッププロパティーでM_部署を参照 部署ID→ルックアップ→表示コントロルの右端のV→コンボボックス →値集合ソース右端V→M_部署→列数=2→列幅=0 ルックアップ設定 標題=部署名 フリガナ:テキスト型(半角カタカナ) ・T_詳細 日付:日付/時刻型 詳細 従業員ID テーブル設計の下段のルックアッププロパティーでM_従業員を参照 従業員ID→ルックアップ→表示コントロルの右端のV→コンボボックス →値集合ソース右端V→M_従業員→列数=2→列幅=0 標題=従業員名 リレーションシップの設定手順は次で、マウス操作だけです データベースツール→リレーションシップ→ナビゲーション上のテーブルをドラッグ →部署.ID~部署IDを参照整合性 →従業員ID~従業員IDを参照整合性
その他の回答 (4)
- chayamati
- ベストアンサー率41% (260/624)
今晩は、 回答No.4の添付図はテーブル間は1:∞の参照整合性で関連付けられています。 ∞の情報を選択すると1側の情報が特定されます。 この図のテーブルをレコードソースとして作成したのが ご質問の回答の従業員登録フォームです。 上段に数行の従業員リストはフリガナ順に基本情報が表示されています。 基本情報の項目が多ければ登録項目を2つのフォームで対応します。 フォームのプロパティーで追加、削除、修正の出来ない参照専用 参照専用のフォームよりフリガナ、生年月日等を表示除外して 必要最小限にします。 人数が表示高さが超えると右端に上下のスクロールバーが表示されます。 下段の赤枠の2つはサブフォームで詳細情報です。 サブフォームは基本情報の右端のレコードセレクターのある情報 つまり前田氏の詳細情報です ここで、基本情報と詳細情報に触れておきます ・基本情報:一度登録するとある程度の期間変更のないもの 氏名、生年月日、入社年月日、配属部署、役職等 ・詳細情報;日付を伴う情報(人事異動、転勤、昇級)、従業員の家族、日付を伴う覚え書き 日付が伴う情報は期間が抽出条件
- chayamati
- ベストアンサー率41% (260/624)
VBAなしで実現できると思いますが 補足願います (1)で開いた従業員と従業員Bは別人ですか 一人の基本情報に複数の詳細情報があるのですか 従業員の人数はどの程度ですか Accessのヴァージョンは
補足
お時間いただきありがとうございます!とても困っているので大変助かります.. (1)で開いた従業員と従業員Bは別人ですか →同じ人(従業員B)の想定です。 一人の基本情報に複数の詳細情報があるのですか →はい。イメージとしては従業員Bの「基本情報」フォーム内に「給与」、「評価」、「個人情報」等の 複数の詳細ボタンを作成し、そのボタンを選択すると従業員Bの各情報を表示させたいです。 (現状、従業員Bの基本情報から仮に「給与」というボタンを選択すると従業員A(1番目に登録した従業員)の内容が表示され、 従業員Bと連動していないです) 従業員の人数はどの程度ですか →50名です。 Accessのヴァージョンは →Access2016です。
- kkkkkm
- ベストアンサー率66% (1719/2589)
イベントプロシージャじゃなくてイベントでした。
- kkkkkm
- ベストアンサー率66% (1719/2589)
フォームと選択クエリをもとにしたフォームを作成し、イベントプロシージャでマクロからクエリを基にしたフォームを開いたり、フィルター機能を使うなどしてお望みのものを作成してください。
お礼
大変ご丁寧に解説頂き、ありがとうございます!!貴重なお時間をありがとうございました。後ほど、ご説明頂いた内容を元に作成してみます。助かります>< ありがとうございます!