簡體   English   中英

如何確定MS Word宏中表格的頁碼?

[英]How can I determine the page number of a table in MS Word Macro?

我在MS Word 2016中有一個包含200多個頁面甚至更多表格的文檔。 我需要將奇數頁上的所有表都對齊到左側,並且需要將偶數頁上的所有表都對齊到右側。 除了一兩個表,如果需要,我可以手動進行修改,這些表都不會跨多個頁面。 使用

Dim oTable As Table
For Each oTable In ActiveDocument.Tables
    oTable.Rows.Alignment = wdAlignParagraphRight
Next oTable

我可以將所有表格向右對齊。 當使用wdAlignParagraphLeft而不是wdAlignParagraphRight我可以將所有表格向左對齊。 但是我無法弄清楚如何獲取表格的頁碼,因此我可以根據表格所在的頁碼分配對齊方式。

(這樣的想法是,如果將它打印成一本書,桌子總是放在里面。如果有更好的方法可以讓我聽,那是可以的。如果打印成一本書,並且兩頁彼此相鄰應該在內側這樣:)

+-------------------------------+
|    Even Page  |   Odd page    |
+---------------+---------------+
|       |Table| | |Table|       |
|               |               |
+-------------------------------+

揚基,您可以使用以下方法確定特定表所在的頁碼:

oTable.Range.Information(wdActiveEndPageNumber)

因此,要遍歷文檔中的所有表格並根據它們所在頁面的奇數或偶數性質對齊它們,可以使用:

Dim oTable As Table
Dim PageNo As Integer

For Each oTable In ActiveDocument.Tables
    PageNo = oTable.Range.Information(wdActiveEndPageNumber)
    If PageNo Mod 2 = 0 Then    'The page number is EVEN.
        oTable.Rows.Alignment = wdAlignParagraphRight
    Else                        'The page number is ODD.
        oTable.Rows.Alignment = wdAlignParagraphLeft
    End If
Next oTable

如有其他疑問,請隨時提出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM