"RecordLocks/レコードロック" プロパティ

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

対象

Form オブジェクト

Report オブジェクト

レコードをロックする方法と、2 人のユーザーが同じレコードを同時に編集しようとした場合の動作を示します。値の取得および設定が可能です。

expression.RecordLocks

expression 必ず指定します。このトピックの [対象] の一覧のオブジェクトのうちの 1 つを返すオブジェクト式を指定します。

解説

レコードを編集する場合、編集が完了する前に他のユーザーがそのレコードを変更できないように、Microsoft Office Access 2007 によってそのレコードを自動的にロックできます。

  • フォーム。基になるテーブルまたはクエリのレコードとのロック済みマルチ ユーザー データベース内のデータが更新されるを指定します。

  • 対象がレポートの場合、レポートをプレビューまたは印刷するときに、レポートの基になるテーブルまたはクエリのレコードをロックするかどうかを示します。

  • 対象がクエリの場合、クエリが実行されている間、クエリのレコードをロックするかどうかを示します (主に、マルチユーザー データベースのアクション クエリに対して使用)。

注: ロックは、フォーム、レポート、または Microsoft Access データベース (.mdb または .accdb) でクエリにのみ適用されます。

"RecordLocks/レコードロック" プロパティの設定値は次のとおりです。

設定

Visual Basic

説明

No Locks/しない

0

対象がフォームの場合、複数のユーザーが同時に同じレコードを編集できます。これは "共有的" ロック状態とも呼ばれます。2 人のユーザーが同じレコードに変更内容を保存しようとすると、2 番目にレコードを保存しようとしたユーザーにメッセージが表示されます。このユーザーはレコードを破棄するか、レコードをクリップボードにコピーするか、または他のユーザーによる変更内容に上書きできます。この設定値は通常、読み取り専用フォームまたはシングル ユーザー データベースで使用されます。また、マルチユーザー データベースで使用して、複数のユーザーが同じレコードを同時に変更できるようにすることもできます。

対象がレポートの場合、レポートがプレビューまたは印刷されている間、レコードはロックされません。

対象がクエリの場合、クエリが実行されている間、レコードはロックされません。(既定値)

All Records/すべてのレコード

"1"。

フォームがフォーム ビューまたはデータシート ビューで開かれている間、レポートがプレビューまたは印刷されている間、またはクエリが実行されている間は、基になるテーブルまたはクエリ内のすべてのレコードがロックされます。ユーザーはレコードを読み取ることはできますが、フォームが閉じられるか、レポートの印刷が終了するか、またはクエリの実行が終了するまで、レコードを編集、追加、または削除することはできません。

Edited Record/編集済みレコード

51

この設定値は、対象がフォームとクエリの場合だけ有効です。レコードのページは、ユーザーがレコード内のフィールドの編集を開始すると同時にロックされ、ユーザーがそのレコードを保存するまでロックされたままになります。したがって、レコードを編集できるのは、一度に 1 人のユーザーだけです。これを "排他的" ロック状態とも呼びます。


注: フォームのプロパティ シート、 マクロでは、Visual Basic for Applications (VBA) コードを使って、このプロパティを設定することができます。

注: 開いているフォームまたはレポートの "RecordLocks/レコードロック" プロパティを変更すると、自動的にレコードセットが再作成されます。

フォームの基になるテーブルまたはクエリが 1 人のユーザーにのみ使用される場合や、データに対するすべての変更が 1 人のユーザーによって行われる場合は、[No Locks/しない] に設定します。

マルチユーザー データベースで、共有的ロック状態を使用し、ユーザーがフォームの同じレコードを編集しようとしたときに警告を出すようにするには、[No Locks/しない] に設定します。2 人以上のユーザーが同時にデータを編集できないようにするには、[Edited Record/編集済みレコード] に設定します。

レポートのプレビューまたは印刷を開始した後や、追加クエリ、削除クエリ、テーブル作成クエリ、または更新クエリの実行を開始した後に、データが変更されないようにするには、[All Records/すべてのレコード] に設定します。

フォーム ビューまたはデータシート ビューでは、ロックされている各レコードのレコード セレクタにロック インジケータが表示されます。

ヒント

フォームの既定のロック プロパティ設定を変更するには、 Microsoft Office ボタン Office ボタンの画像 ] をクリックし、[ Access のオプション] をクリックします。Access のオプション] ダイアログ ボックスで、[詳細設定] をクリックし、[既定のレコード ロック] で目的のオプションを選択します。

フォーム、レポート、または開いている Database Connectivity (ODBC) のデータベースからクエリのデータは、ロックプロパティの設定に関係なく、選択ロックしない設定が表示されたとして扱われます。

使用例

次の使用例では、[社員] フォームの " RecordLocks/レコードロック" プロパティを [Edited Record/編集済みレコード] に設定します (ユーザーがレコード内のフィールドの編集を開始すると同時にレコードがロックされ、ユーザーが別のレコードに移動するまでロックされたままになります)。

Forms("Employees").RecordLocks = 2

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×