2017-05-03 6 views
1

イム文書のフォームフィールドを埋めるために、このコード(例)を使用して、Word文書、およびIMを編集するためのアクセスを使用して:これは、すべての罰金とダンディ作業、しかしであるの編集フォームフィールド/ Accessから単語内の参照

.FormFields("txtProsjektNavn").result = DLookup("txt", dbName, "key = 
'byggNavn'") 
.FormFields("txtProsjektNr").result = DLookup("value1", dbName, "key = 
'prosjektNr'") 
.FormFields("txtOverblikk").result = DLookup("txt", dbName, "key = 
'txtOverblikk'") 
.FormFields("txtByggEier").result = DLookup("txt", dbName, "key = 
'byggEier'") 

を。 これらの値のいくつかは、ドキュメント内で何度も繰り返す必要があります。 2つのフォームフィールドにwordという文書の同じブックマーク名を付けることは、no-noです。だから、名前の異なるフォームフィールドをたくさん作成するのではなく、既に作成済みのフォームフィールドを参照するREFフィールドを作成しようとしましたが、アクセスがフォームフィールド自体を更新すると更新されません。

誰かがこれに対する解決策を持っているか、単にtext1、text2、text3のような異なる名前のフォームフィールドをたくさん作成して、それらにすべて同じ値を入力する必要があります。

答えて

0

私は提案された解決策を試してみましたが、私の問題は、私は、ドキュメント内のすべてのフィールドを更新したときにフォームフィールドが空白にリセットということでした。 私は相互参照フィールドだけをループし、それらの更新を個別に打つことによってこの問題を解決しました。

docField as Word.Field 

    For Each docField In doc.Fields 
    If docField.Type = wdFieldRef Then 
     docField.Update 
    End If 
    Next docField 
1

あなたはすでに必要なフォームフィールドを入力しています。これらの値を繰り返す場合は、cross-reference

次の手順に従ってすべてのフィールドを設定したら、フォームフィールドに値を入力した後にActiveDocument.Fields.Updateを使用してフィールドを自動更新できます。

挿入 -

enter image description here

選択基準ブックマークなどの種類や挿入(リンク中)>クロスリファレンス

enter image description here

フィールドを更新するには、vbaにActiveDocument.Fields.Updateを使用します。

enter image description here

+0

Hey!これはまさに私が探していたものでした。ただし、activedocument.fields.updateを実行した後、フォームフィールドが空白にリセットされる問題があります。どの見通しが相互参照が空白になるか – Arne

関連する問題