2017-02-19 13 views
1

テーブルの各行をループし、下の境界線を削除するマクロを作成したいと思います。各行から下の境界線を削除するWordマクロ

Sub Remove() 

Set myTable = Selection.Tables(1) 
    With myTable.Borders 

Selection.Cells.Borders(wdBorderBottom) = wdLineStyleNone 

    End With 

End Sub 

をしかし、それだけで1行のために働く、それが選択する必要があります。

は、これまでのところ私が持っています。 すべての行にどのように適用するのですか?

答えて

0

テーブル内のすべての行をループし、各行の下端をwdLineStyleNoneにフォーマットする必要があります。

コード

以下のコードを試してみてください:返信用

Sub Remove() 

Dim myTable As Table 
Dim r As Variant 

Set myTable = ThisDocument.Tables(1) 

For Each r In myTable.Rows ' <-- loop through all rows in table 
    r.Borders(wdBorderBottom) = wdLineStyleNone 
Next r 

End Sub 
+0

感謝を!それはよさそうだが、私はそれをしようとすると、 は、その後のメッセージが表示されます。 は ファイル名を指定して実行時エラー「5941」: コレクションの要求のメンバーが 存在し、「設定しないmytableは= ThisDocument.Tables(1) "強調表示されます。 スクリプトで最初にテーブルを選択する必要がありますか? "ActiveDocument.Tables(1).Select"を追加しようとしましたが、役に立たなかった。 – LeFunk

+0

@LeFunkテーブルを選択する必要はありません。あなたのWord文書に1つのテーブルが作成されていますか?このコードはどこにあるの? –

+0

私は1つのテーブルだけのドキュメントを持っていて、それは1つのカラムを持っています。 コードは、通常のマクロウィンドウに表示されます(正しい用語である場合)。 – LeFunk

関連する問題