创建具有指定页数的文档

对于工作,我们必须手动对原始文件进行分页。基本上在每个人的底部都印有页码。我有一个模板,该模板的页脚带有页码,可以将原件放到打印机中,然后将分页打印到底部,但是,就目前情况而言,我必须为每个页码按Ctrl + Enter有时是数百个,有时是数千个。

是否可以打开模板并有一个弹出窗口询问我要多少页,所以我用分页预先填充了X个空白页面的文档?

asddsa_asddsa 回答:创建具有指定页数的文档

Private Sub Document_New()

Dim myResult As String

    myResult = InputBox("How many pages?")

    If myResult = "0" Then Exit Sub

    ActiveDocument.Paragraphs(1).Range.InsertAfter Text:=CStr(String$(CLng(myResult) - 1,Chr$(12)))

    Exit Sub

End Sub

@FreeFlow,您的代码工作得很好,除了需要在您的ActveDocumnet行中添加“ -1”,并在End Sub之前添加Exit Sub。感谢框架可以解决此问题。

,

如果将以下宏放入模板中,则每次在基于该模板创建新文档时它将运行。

Public Function AutoNew()

Dim myResult                                As String

    myResult = InputBox("How many pages?")

    If myResult = "0" Then Exit Sub

    ActiveDocument.Paragraphs(1).Range.InsertAfter Text:=CStr(String$(CLng(myResult),Chr$(12)))

End Function

根据@CindyMeisters的观察,认为New不起作用。

我尝试了在我创建的新模板中提供的代码,但实际上不起作用。这让我感到惊讶。修改后的代码有效。请注意。如果我打开Word并单击File.New,请选择我的模板,新的宏将不起作用。如果在桌面/文件资源管理器上,我右键单击模板并选择新的代码,则AutoExec的代码将按预期工作。对所有人的误导表示歉意。我还从“功能”更正为“子”。

Public Sub AutoExec()

Dim myResult                                As String

    myResult = InputBox("How many pages?")

    If myResult = "0" Then Exit Sub

    ActiveDocument.Paragraphs(1).Range.InsertAfter Text:=CStr(String$(CLng(myResult),Chr$(12)))

End Sub
本文链接:https://www.f2er.com/3164866.html

大家都在问