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

注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。私たちの目的は、このコンテンツがお客様の役に立つようにすることです。お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。簡単に参照できるように、こちらに英語の記事があります。

適用対象

Form オブジェクト

Report オブジェクト

RecordLocks プロパティを使用すると、レコードのロック方法と 2 人のユーザーが同じレコードを同時に編集しようとしたときの動作を決定できます。読み取り/書き込み。

expression.RecordLocks

expression は必須です。「適用対象」の一覧のオブジェクトのうちの 1 つを返す式です。

解説

レコードの編集を始めると、Microsoft Office Access 2007 はそのレコードを自動的にロックし、編集が完了するまで他のユーザーが変更できないようにします。

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

  • レポート。レポートがプレビューまたは印刷されている間、基礎となるテーブルまたはクエリのレコードをロックするかどうかを指定します。

  • クエリ。クエリが実行されている間、クエリ (一般的に、マルチユーザー データベースのアクション クエリ) のレコードをロックするかどうかを指定します。

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

RecordLocks プロパティでは、次の設定が使用されます。

設定

Visual Basic

説明

ロックなし

0

(既定) フォームの場合、2 人以上のユーザーが同じレコードを同時に編集できます。これは "楽観的" ロックとも呼ばれています。2 人のユーザーが同じレコードを変更した上で保存しようとすると、Access は 2 人目のユーザーにメッセージを表示します。このユーザーはレコードを破棄するか、クリップボードにコピーするか、他のユーザーが行った変更を採用できます。この設定は一般的に読み取り専用フォームまたはシングルユーザー データベースで使用されます。複数のユーザーが同じレコードを同時に変更できるように、マルチユーザー データベースで使用されることもあります。

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

クエリの場合、クエリの実行中、レコードはロックされません。

すべてのレコード

1

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

編集済みのレコード

2

(フォームとクエリのみ) ユーザーがレコード内のフィールドの編集を始めるとレコードのページがロックされ、ユーザーが別のレコードに移るまでロック状態が維持されます。結果的に、レコードを編集できるのは一度に 1 ユーザーに限られます。これは "排他的" ロックとも呼ばれています。


注: このプロパティを設定するには、フォームのプロパティ シート、マクロ、または Visual Basic for Applications (VBA) コードを使用します。

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

基礎となるテーブルまたはクエリを使用する、あるいはデータのすべての変更を行うユーザーが 1 人だけの場合、フォームにロックなし設定を利用できます。

マルチユーザー データベースの場合、楽観的ロックを使用し、フォームの同じレコードを編集しようとするユーザーに警告する場合、ロックなし設定を利用できます。2 人以上のユーザーがデータを同時に編集することを禁止する場合、編集済みレコード設定を利用できます。

自分がレポートのプレビューまたは印刷、あるいは追加、削除、表作成、更新クエリの実行を始めたらデータが変更されないようにするとき、すべてのレコード設定を利用できます。

フォーム ビューまたはデータシート ビューでは、ロックされているレコードのレコード セレクターにロック済みと表示されます。

ヒント

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

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

次の例では、"Employees" フォームの RecordLocks プロパティが編集済みレコードに設定されます (ユーザーがレコード内のフィールドの編集を始めるとレコードのページがロックされ、ユーザーが別のレコードに移るまでロック状態が維持されます)。

Forms("Employees").RecordLocks = 2

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

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

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

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

×