我對VBA非常陌生,我的第一個代碼是複製Excel表格並將其粘貼到Word中。它的工作,但問題是,所有表被粘貼左對齊,我想它中心對齊。有誰知道如何去做?要在這裏發佈我的代碼:如何將所有表格放在Word中,來自Excel - VBA
Sub excel2word()
Dim objWord As New Word.Application
'Copy the range Which you want to paste in a New Word Document
Set objWord = CreateObject("Word.Application")
For i = 2 To 200
With objWord
.Documents.Add
Sheets("Plan2").Select
Range("A" & i).Copy
.Selection.PasteAndFormat (wdFormatPlainText)
.Selection.TypeParagraph
Sheets("Teste").Select
Range(Cells((26 * (i - 1) + 1), 1).Address, Cells(((26 * (i - 1) + 7)), 3).Address).Copy
.Selection.PasteExcelTable True, False, False
.Visible = True
.Selection.TypeParagraph
Sheets("Teste").Select
Range(Cells((26 * (i - 1) + 8), 1).Address, Cells(((26 * (i - 1) + 16)), 3).Address).Copy
.Selection.PasteExcelTable True, False, False
.Visible = True
.Selection.TypeParagraph
Sheets("Teste").Select
Range(Cells((26 * (i - 1) + 17), 1).Address, Cells(((26 * (i - 1) + 25)), 3).Address).Copy
.Selection.PasteExcelTable True, False, False
.Visible = True
.Selection.TypeParagraph
End With
Next
End Sub
正如你可以看到,這段代碼複製粘貼在一個互動3個表,即總共600桌!所以,一個接一個地中心變得非常無聊。
任何幫助非常感謝!
你想中心網頁上的表格,或在細胞中心的數據? – Christina
居中! – Luiz
奇怪的是,正如你可能已經意識到的那樣,Word似乎並沒有提供一個VBA方法來對齊整個表格。實際上,如果打開宏錄製器然後使用對齊,則會出現與未對齊宏錄製器時對齊的行爲。但是,您可以應用提供此對齊方式的表格樣式。在Word中創建一個樣式是您的選擇嗎?如果是這樣,我想我可以提供代碼。 (我認爲你需要在VBA之外創建樣式,然後使用VBA來應用它)。 – Christina