it-swarm-ja.com

MS Word VBAエラー:「指定された名前のアイテムが見つかりませんでした」

相互参照されたアイテムのフィールドコードを調整して、数字のみが表示されるようにマクロを設定しようとしています。図3の代わりに3。

私はオンラインでそれを見つけました\# "0"をフィールドコードに追加してこれを行うことができ、これは機能します。ただし、頻繁に行う必要があるため、キーストロークを記録してマクロを設定しようとしました。これはマクロです:

Sub Macro1() '' Macro1 Macro '' Selection.MoveLeft Unit:= wdCharacter、Count:= 1 ActiveWindow.View.ShowFieldCodes = Not ActiveWindow.View.ShowFieldCodes ActiveDocument.Shapes.Range(Array( "Text Box 62"))。 Select Selection.TypeText Text:= "#" "0" "" ActiveWindow.View.ShowFieldCodes = Not ActiveWindow.View.ShowFieldCodes ActiveDocument.Shapes.Range(Array( "Text Box 62"))。Select End Sub

残念ながら、それは機能しません。フィールドコードは実行後に表示されますが、マクロはその直後に終了し、次のエラーが発生します。

Microsoft Visual Basic

実行時エラー「9」:

指定された名前のアイテムが見つかりませんでした。

私はこれを修正する方法がわからないので、助けていただければ幸いです。

1
Marouf

あなたが説明した状況をシミュレートするために、2つのグラフを挿入し、次にキャプションを挿入し、最後に2つの相互参照を挿入しました。その結果、テキスト付きの2つのフィールドが得られました:図1図2

\# "0"ビットでの調査結果を使用して、テキストを削除する次のマクロをまとめました‘図‘数字のみを残します。現在はRefフィールドでのみ機能しますが、WdFieldType列挙にリストされている他のフィールドタイプでも使用できると思います。

Sub UpdateFieldCodes()
    For Each Field In ActiveDocument.Fields
        If Field.Type = wdFieldRef Then
            Field.Code.Text = Field.Code.Text & " \# ""0"""
            Field.Update
        End If
    Next
End Sub
1
wlod