このエラーは、テキストフォームフィールド(「開発者コントロール」>「従来のフォーム」)(MS Office 2013)を使用して文書にName
プロパティを明示的に書き込もうとした場合に発生します。 Selection.Paste
操作 -VBA Word - 重複したテキストフォームのフィールド名を変更する
Sub EditCopiedFormField()
Selection.MoveDown Unit:=wdLine, Count:=4, Extend:=wdExtend
Selection.Copy
Selection.MoveDown Unit:=wdLine, Count:=1
Selection.Paste
ActiveDocument.FormFields(3).Name = "ID999"
End Sub
はSelection.Copy
後ActiveDocument.FormFields(i).Name
フィールド書き込み可能ですか?
「テキストフォームフィールド」をコピーして貼り付けた後、Name
(UIダイアログのブックマークフィールド)プロパティを読み込んでも問題はありませんが、書けません。 )コピー後に複製、標準エラー受信:それらを含む範囲をコピーした後"ID001"
:たとえば
Method 'Name' of object 'FormField' failed
を、私は同じName
を持つ2つの「テキストボックスフォームフィールド」を得ました。フォームをダブルクリックして複製を編集すると、複製のName
( "Bookmark")が瞬時にクリアされます:""
。何の「ブックマーク」UIのメニュー「リンク>ブックマーク」を通じて複製されていないことを指摘し、Name
変更前の「ブックマーク」を追加しようとし
:
`ActiveDocument.Bookmarks.Add("ID999")`
は、状況を変更しないでください。
これらの重複する名前を変更するにはどうすればよいですか?
を、との行 '場合、私= I0その後Fld.Name =「ID999」エンドIf'を追加重複したフォーム、私はまだ同じエラーが発生しています。 – hyprfrcb
それは意図ではありませんでした。このコードは、フィールドのリストをインデックス番号とともに出力します。名前を変更するには、 'ActiveDocument.FormFields(x).Name =" ID999 "'を実行する必要があります。ここで、xは、変更したいフィールドの名前を識別する印刷リストのインデックス番号です。 – Variatus
はい、私はしました。私はそのリスティングで何か悪いものを見つけませんでした。フィールドが重複している場合、フィールド 'Name'に直接呼び出しを行うとエラーになります。数時間前に行った編集を確認してください。 – hyprfrcb