リンクユニット

Windows8 & Office2013 Access2013

Print Friendly, PDF & Email

ユーザーアカウントを取得して更新者を記録する

投稿日:2017年1月7日 更新日:

Accessでフォームを起動した時に自動でPCのユーザーアカウントを取得して、更新者を記録する方法です。
帳票フォームの[編集]ボタンをクリックして、単票フォームを表示したときにユーザーの名前が表示されるようにします。
ユーザー名を自動取得

[T_man]テーブルを作成して、下のように[ユーザーアカウント]と[氏名]を入力します。
[ユーザーアカウント]が主キーです。
T_manテーブル

[T_売上]テーブルです。
テーブル

2つのテーブルは、ユーザーアカウントでリレーションシップを結んでいます。

帳票フォームの元になるクエリを作成します。[T_売上テーブル]のすべてのフィールドと、[T_man]テーブルの[氏名]を表示できるようにします。[氏名]フィールドは、[更新者]となるよう[更新者:氏名]とします。
クエリのデザインビュー

クエリ[Q_売上_帳票]を元に帳票フォームを作成します。[編集]ボタンを追加します。
F_帳票フォーム

クエリ[Q_売上_帳票]をコピーして、[Q_売上_単票]という名前にします。
今度は[ID]の抽出条件に[forms]![F_帳票]![ID]と入力します。
帳票フォームから選択したIDの単票フォームを開く方法については、帳票フォームから単票フォームを起動するにはで解説しています。
IDの抽出条件

クエリ[Q_売上_単票]を元に単票フォームを作成します。名前は[F_単票]とします。そして、フォームの[レコード移動時]イベントに
単票フォーム

下のように書き込みます。
   Set objNetWork = CreateObject("WScript.Network")
   Me.ユーザーアカウント = objNetWork.UserName

レコード移動時のイベントプロシージャ

これで、単票フォームを開いたときにユーザー名が表示されるようになります。
[F_単票]の[ユーザーアカウント]はプロパティの[可視]を[いいえ]にして、見えないようにしています。
フォームのテキストボックスを非表示にするには

帳票フォームと単票フォーム

何も編集せずに閉じても、更新者が保存されてしまいますので、[キャンセルして閉じる]ボタンを作成して、レコードを元に戻して閉じるようにします。
キャンセルして閉じるボタン

[キャンセルして閉じる]ボタンのクリック時のイベントプロシージャに、下のように書き込みます。
   If Me.Dirty Then
   DoCmd.RunCommand acCmdUndo
   End If
   DoCmd.Close

<br>[キャンセルして閉じる]ボタンのクリック時のイベントプロシージャ

関連更新日時を自動表示して記録する方法は、レコードの更新日時を保存するの記事で解説しています。

レコードの更新日時を保存する

Accessで更新日時を保存したいということは多いですね。 まずテーブルに[更新日時]というフィールドを追加します。 フォームに[更新日時] ...

続きを見る

解決できないことは【teratail】で質問してみましょう。

参考Officeのバージョンによって操作が異なる場合があります。以下の記事で、お使いのOfficeのバージョンを確認する方法を解説しています。

Office(Word、Excel、PowerPointなど)のバージョンを確認する方法

Microsoft Officeも時を得て、大きく様変わりしてきました。トラブルを解決しようとするとき、あるいは、何かの操作を探すときなど、 ...

続きを見る

お勧めのテキストです。

おすすめ記事と広告

こんな記事も読まれています

コマンドまたはアクション'レコードの削除'は無効です

Access2013で、帳票フォームを作成し、レコードを削除できるように[削除]ボタンを作成しました。 ですが、[削除]ボタンをクリックする ...

列番号が数字になる

Excel2013で既存のブックを開くと、列番号が数字になることがたまにあります。 特定のブックだけなのか?原因はよくわかりません。Exce ...

ピボットテーブルで日付のグループ化ができない

Excelでピボットテーブルを作成して、日付フィールドで[月]ごとのグループ化をしようとしてもできないことがあります。これは、見た目は日付に ...

フォームで入力と検索

ExcelでもAccessの単票フォームのような形で入力したり、検索したりすることができます。 1レコードずつ表示することができ、検索も新規 ...

スクリーンショットにハイパーリンク

Office2010からの機能のひとつにスクリーンショットがあります。 スクリーンショット(Office2010) Excelでは、[挿入] ...

-Windows8 & Office2013 Access2013

Copyright © 2001-2017 初心者のためのOffice講座 All Rights Reserved.

Copyright© 初心者のためのOffice講座 , 2017 AllRights Reserved Powered by AFFINGER4.