我对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