こんばんわ。
現在、リソースの管理方法を改善する目的でExcelからAccessに移行を検討しています。
そこでAccessのサブフォームを使って以下のような画面イメージで管理しようと考えています。
そこで2点、実現方法について皆様からお知恵を分けていただきたいです。
(1)サブフォーム上に全てのレコードが表示する方法。
※テーブルにはこれまで所属していた人を含めたデータを保存している
※所属や拠点でレコードの絞り込みをかける
(2)表示されたレコード内容を修正して、チェックしたレコードは一括登録のボタンなどで一度に複数
同時に修正を行う方法。
どのような操作や設定を行うことで実現できますでしょうか。
クエリ集やExcelとAccessのスゴ技のような本を買ってもそのような方法は見当たりませんでした。
みなさまのお知恵をお貸し頂きたく存じます。
どうぞよろしくお願い致します。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
補足1:非連結フォームを意図していなければ・・・。
それは、単に、「条件付きでクエリーを表示するには?」という質問になります。
もちろん、非連結フォームですから一括更新ボタンは必要ありません。
「各行が変更されたら自動的にテーブルに反映される」ということを認めるだけです。
補足2:連結フォームを意図しているのならば・・・。
その場合は、指定条件で一時テーブルを作成して表示・更新。
チェック付きのみ更新をテーブルに反映。
こういうコードを書くことになります。
PS、「条件付きでクエリーを表示するには?」という質問に変えられて良いのでは・・・。
No.2
- 回答日時:
(2)の要件を含めると質問文から予想される技術力では無理ではないかと思います。
VBAをいくらか使えればどうってことない内容なのですが。
VBAありの場合ですと以下のように私なら実装します。
1.サブフォームは使わない。フォームのヘッダー部分を条件入力に使い、詳細部分を表形式でデータ表示に使用する。
2.(2)の要件(選択したもののみ更新)があるため、フォームのレコードソース用に表示したいテーブルの項目+チェックボックス用の項目を持ったワークテーブルを用意する。これをフォームのレコードソースに使用する。
3.フォームのオープン時のイベントで、ワークテーブルのデータ消去、元のテーブルからワークテーブルに全データをコピー(削除クエリ+挿入クエリで簡単にできます)
4.絞り込み用のボタンを用意し、それが押された際にフォームにフィルタをかける。
(イメージを見ると複数条件があるようですので、条件式の組み立て処理は必要でしょうね)
5.データの更新用ボタンを用意し、それが押された際に、チェックがついたものだけ更新する更新クエリを実行する。
ちゃっちゃと作るなら上のように実装します。(私なら1時間かかるかどうかです)
なお、更新以外に行の追加、削除がある場合にはもう少し面倒なことになります。
VBAではなくマクロ(今もありますよね?)+クエリの使用でも上記の1,2,3,5は可能かな?
4の絞り込みに関して複合条件での絞り込みの実現イメージがわかないのですが。絞り込みが1条件のみならマクロまでの知識で実現はできるかもしれません。(私はVBAにたよるのでマクロはほぼ使わないので断言できませんが
VBA、マクロを使わない場合には、(2)の要件の「選択したもののみの一括更新」はあきらめるべきでしょう。
また、テーブル設計もデータ構造としては不適切と思われる部分がありますので指摘しておきます。
(わかっていてこの構造を選んでいるのかもしれませんが)
項目のうち「社員番号、社員名、入社日、退社日」は通常は各社員について1つしかないデータと考えられます。(結婚等での氏名変更は無視しますが)
これに対し一人の社員は複数のプロジェクトに通常参加しますので「勤務地、所属グループ、所属チーム、職位、プロジェクト番号、参画プロジェクト」は同一の社員に複数存在するデータです。
データ構造としては社員の基本情報「社員番号、社員名、入社日、退社日」とプロジェクト参加情報「社員番号、勤務地、所属グループ、所属チーム、職位、プロジェクト番号、参画プロジェクト」の2つに分けるのが一般的です。
(細かいことを言うとプロジェクト情報として「プロジェクト番号、参画プロジェクト」も分割したりしますが)
No.1
- 回答日時:
Q、みなさまのお知恵をお貸し頂きたく存じます。
A、テーブル設計の概要を説明されたし!
1、サブフォーム???
メインは単なる検索条件を入力するフォームということ。
それはそれで良いかも?
でも、なぜ、そういう風になるのかな?
普通は、考えられないこと。
2、メインを基にサブフォームを更新したい??
レコードを移動すれば自動更新される。
このAccessの機能を殺したい。
となれば、非連結サブフォーム?
でも、それは滅茶苦茶に面倒くさいのでは?
なぜなら、Accessの機能を全て自分の書いたコードで実現する試みだから・・・。
疑問1、メインとサブとをどのように認識されているのか?
疑問2、そもそもテーブル設計が全てだと思うのだが・・・。
なぜゆえに、サブフォームの質問が先行しているのか?
疑問3、非連結フォームなんてオフコン出身者の発想。
なぜに、そのような面倒臭いことをやろうというのか?
色々と疑問はありますが、テーブル設計の簡単なスケッチを提示。
それが先決だと思いますよ。
※私は、全くの素人。見当違いはお許し願いたい!
この回答への補足
早速のコメントありがとうございます。
疑問に挙げられていた内容にお答えしますと、
(1)メインとサブとをどのように認識されているのか?
→メインフォームでは絞り込みの項目があり、
サブフォームに絞り込みで該当するレコードが表示されます
(2)なぜゆえに、サブフォームの質問が先行しているのか?
→検索を行う場合はメインで検索項目を決め、サブフォームにその結果を
表示するという使い方をするとクエリ集に書いてあった為です
(3)非連結フォームなんてオフコン出身者の発想。
→これは完全に私自身がAccessの素人である点が大きいです。
もちろんサブフォームを使わないで、投稿させていただいた挙動が
実現できれば、問題はありません。
以上と併せて、テーブル設計の簡単な構成を書きますと、以下のようなイメージです。
|社員番号|社員名|勤務地|所属グループ|所属チーム|職位|プロジェクト番号|参画プロジェクト|入社日|退社日|
これらのテーブルをグループやチーム、プロジェクトなどで絞り込みをかけて、
表示されたレコードのうち、変更させたい情報を修正して、修正ボタンを押すと
一括でテーブルに修正が反映されるという挙動を考えています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Visual Basic(VBA) Accessフォームで全レコードを指定のExcelのセルへ転送し印刷する方法について 2 2022/09/08 18:23
- Access(アクセス) Access2016でフォーム内にExcelの複数シートを 表示させるイメージで複数テーブルの デー 1 2022/11/25 15:30
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- その他(データベース) Accessフォームにて指定のフィールドの平均値を小数点第一位で表示できない 2 2022/08/30 17:19
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access サブフォームでの選択行...
-
Access2000、これはいったい・...
-
アクセスでサブフォームのレコ...
-
メインフォームとサブフォーム...
-
Access 複数フォームを...
-
(ACCESS)条件に応じて、テキ...
-
サブフォームのデータを保存す...
-
初心者です。accessで請求書を...
-
Access2000 サブフォームのReco...
-
[Access2000] フォーム間で値の...
-
サブフォームが見えなくなる。
-
Accessのサブフォーム内で連続...
-
ACCSESS2013VBA フォームのレコ...
-
Accessでのフォーム表示がうま...
-
Accessのコンボボックスに連動...
-
Accessのサブフォームから値を...
-
チェックボックスでレコードの...
-
複数項目でのサブフォームとの...
-
access サブフォームにリストを...
-
googleフォームでインストール...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access サブフォームでの選択行...
-
Access2000、これはいったい・...
-
(ACCESS)条件に応じて、テキ...
-
Access 複数フォームを...
-
access サブフォームにリストを...
-
ACCSESS2013VBA フォームのレコ...
-
Accessで、一覧からクリックし...
-
googleフォームでインストール...
-
サブフォームが見えなくなる。
-
Access2000 サブフォームのReco...
-
Accessで、サブフォームのある...
-
Accessのサブフォームから値を...
-
アクセスでサブフォームのレコ...
-
サブフォームのデータを保存す...
-
Accessでのフォーム表示がうま...
-
サブフォームでのダブルクリッ...
-
2回目に画面のレコードセットの...
-
AccessのFormのみをスクリーン...
-
アクセスで サブフォームの表...
-
ACCESSでfilterとorderbyについて
おすすめ情報