我想创建一个自定义页边距设置的新word文档。我已经编写了这段代码,但似乎在WITH语句中出现了问题。不太确定为什么会发生这种情况。
Sub test()
Dim docCreate As Document
Set docCreate = Documents.Add
With docCreate.PageSetup
.TopMargin = WordApp.InchesToPoints(0.6)
.BottomMargin = WordApp.InchesToPoints(0.6)
.LeftMargin = WordApp.InchesToPoints(0.6)
.RightMargin = WordApp.InchesToPoints(0.6)
End With
docCreate.Range.Paste
End Sub
答案 0 :(得分:3)
试试这个:
Sub test2()
Dim docCreate As Document
Set docCreate = Documents.Add
With docCreate.PageSetup
.TopMargin = Application.InchesToPoints(0.6)
.BottomMargin = Application.InchesToPoints(0.6)
.LeftMargin = Application.InchesToPoints(0.6)
.RightMargin = Application.InchesToPoints(0.6)
End With
docCreate.Range.Paste
End Sub
问题是WordApp
未定义,可能来自您复制粘贴此代码段的位置。您可以定义它(Set wordApp = Application
如果您想要当前的那个,或Set wordApp = CreateObject("Word.Application")
如果您想要一个新的),或者您只是像我上面那样使用对象Application
(但您假设,像这样,你正在处理当前运行的Word应用程序)。