多くの人がWordを使用してフォームを作成し、それを他の人が情報を入力するために使用します。私は、コピー機で印刷されて複製されるあなたの平均的な、ありふれたフォームについて話しているのではありません。 Wordの特別なフォームフィールドを持つフォームを使用して、データが配置された状態で個別に保存されるデータ収集ドキュメントの基礎として使用されるテンプレートを作成することについて話しています。

設計上、これらのフォームは保護されています。これは良いことも悪いこともあります。ユーザーがすべきでない情報を変更するのを防ぐので、それは良いことです。変更したい情報を変更できなくなるので、それは悪いことです。ユーザーがフォームテンプレートに基づいてドキュメントを作成すると、フォームフィールドに入力した情報が新しいドキュメントに保存されます。保存したドキュメントを再読み込みし、フォームのロックを解除して新しいフィールドを追加するか、その他の変更を加えてから、保存する前にフォームを再ロックすると、ユーザーがフォームに追加した情報はWordによって自動的に削除され、すべてのフォームフィールドが削除されます。デフォルトに戻します。

信じられないかもしれませんが、これはWordの機能です。その特徴づけに疑問を呈する人もいますが、それはフォーム機能が権力者によってどのように設計されたかです。この問題を克服する唯一の方法は、マクロを使用することです。マクロを保存する自然な場所は、フォームの基になっているテンプレートです。マクロをショートカットキーまたは linkクイックアクセスツールバーで使用できるようにすることをお勧めします。 (マクロへのショートカットキーの割り当てとクイックアクセスツールバーへの追加については、_WordTips._の他の問題で説明されています)

問題は、フォームを再ロックしたときにのみ現れることに注意してください。それらのロックを解除しても、データが失われることはありません。したがって、特別なマクロを使用してフォームを再ロックするだけでよく、Wordの通常のロック解除ツールを使用して、変更前にフォームの保護を解除できます。次のマクロは、ロック解除されたフォームを安全に再ロックします:

Sub SafeFormLock()

If ActiveDocument.ProtectionType = wdNoProtection Then         ActiveDocument.Protect _           Password = "" _           Type:=wdAllowOnlyFormFields, _           NoReset:=True     End If End Sub

If …​ Thenチェックの理由は、アクティブなドキュメントで保護方法を使用し、それが既に保護されている場合、VBAがエラーを生成するためです。また、このマクロは保護パスワードを設定しないことに注意してください。パスワードを使用する場合は、マクロでパスワードを指定する必要があります。

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(10416)は、Microsoft Word 2007、2010、2013、および2016に適用されます。Wordの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。 linkSafely RelockingForms