0

パスワードで保護された Word ドキュメントに 6 つのテーブルのセットがあります。各テーブルにはヘッダー行があり、その後に少なくとも 1 つのデータ行が続きます。2 行目 (およびそれ以降) の 6 列目には、ドロップダウン フォーム フィールドがあります。各テーブルの上には、ユーザーがテーブルに行を追加できるボタンがあります。その場合、6 列目に別のドロップダウンが含まれます。

ユーザーがドロップダウンで値を選択してフィールドを離れた後、選択した値に基づいてそのセルに色を付ける必要があります。OnExit 値を設定して、"HighlightStatus" というマクロを実行できます。変更するセルへの参照を取得するには、使用しています

Dim ff As Word.FormField
ThisDocument.Unprotect strSheetPassword
Set ff = ThisDocument.FormFields(Selection.Bookmarks(1).Name)

このフォーム フィールドを含むセルを参照するにはどうすればよいですか?

もう 1 つの問題は、テーブルに行を追加するときに、更新されたばかりのフィールドを参照できるように、フォーム フィールドの名前を一意の名前に設定する必要があることです。しかし、Name プロパティは読み取り専用のようです。

私は基本的に同じ壁にぶつかる別のアプローチを取りました。フィールドを更新した後、コードですべてのテーブルとすべての行をループし、各行の 6 列目を更新しました。問題は、画面がドキュメントの最後までスクロールすることです。元の場所に戻るには、正しいフォーム フィールドを一意に参照する必要がありますが、フィールドに一意の名前がない場合は参照できません。

4

1 に答える 1