用户登录
用户注册

分享至

vba只打印word第一页

  • 作者: 菱垣
  • 来源: 51数据库
  • 2020-04-21

一、vba excel如何压缩打印内容到一页

请运行下面的代码Private Sub 一键缩放为一页() Dim 打印页数 As Integer, P As Integer, S As String, 新的缩放页数 As Integer, I As Integer 打印页数 = ExecuteExcel4Macro("Get.Document(50)") Select Case 打印页数 Case 1: Exit Sub Case 2: 新的缩放页数 = 1 GoTo Flag2 Case Is >= 3: S = InputBox("当前总页数是:" & 打印页数 & " ,缩为一页可能会影响阅读!" & vbCrLf & "建议你在下面指定合理的缩放页数" & vbCrLf & "页数范围:1至" & 打印页数 & "之间" & vbCrLf & vbCrLf & "新的缩放页数:", "指定缩放页数", 1) If S = "" Then Exit Sub Else 新的缩放页数 = Val(S) End If If 新的缩放页数 <= 0="" or="" 新的缩放页数="">= 打印页数 Then Exit Sub GoTo Flag2 Case Else End Select Exit SubFlag2: For I = 1 To 100 If ActiveSheet.PageSetup.Zoom <= 0="" then="" exit="" sub="" if="" i=""><> 1 Then 打印页数 = ExecuteExcel4Macro("Get.Document(50)") If 打印页数 <= 新的缩放页数="" then="" exit="" for="" activesheet.pagesetup.zoom="ActiveSheet.PageSetup.Zoom" -="" 2="" nextend="">

二、excel 打印某文件夹下所有工作薄第一页 vba代码该怎么写 谢谢

新建立一个excel文件,命名为"a.xls"放到你要打印的文件夹里面,然后按alt+f11进入vba编辑环境,在左边的资源管理器中的"thisworkbook"或者"sheet1"上点右键,(没有资源管理器的话在上边的视图里面勾出来)建立模块,把下边的代码粘贴进去,然后回到表里,先检查一下宏安全性是否为中或者低,如果是高的话,需要设置工具--宏--安全性--中或者低,保存再打开,选择宏启用,执行 工具--宏,找到uiui执行这个宏

Sub uiui()

Set ws = CreateObject("wscript.shell")

Set fso = CreateObject("scripting.filesystemobject")

Set folder = fso.getfolder(ActiveWorkbook.Path)

Set Files = folder.Files

For Each file In Files

If file.Name <> "a.xls" Then

D = file.Name

path1 = file.Path

Workbooks.Open Filename:=path1

Windows(file.Name).Activate

Sheets("Sheet1").Select

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

ActiveWindow.Close

End If

Next

End Sub

三、excel如何设置每列都打印成一页

我给编了个VBA小程序

Sub 转置()

Sheets("Sheet1").Select

hang = Range("A1").End(xlDown).Row

AR = "A1:A" & Trim(Str(3 * hang))

MsgBox AR

'Exit Sub

Range("A1:C1").Select

Selection.Copy

Sheets("Sheet2").Select

Range("A1").Select

Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _

False, Transpose:=True

Range("A1:A3").Select

Application.CutCopyMode = False

Selection.AutoFill Destination:=Range(AR), Type:=xlFillDefault

'Range("A1:A3").Select

For i = 1 To hang

Sheets("Sheet1").Select

Range(Cells(i, 1), Cells(i, 3)).Select

Selection.Copy

Sheets("Sheet2").Select

Range(Cells(3 * i - 2, 2), Cells(3 * i - 2, 2)).Select

Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _

False, Transpose:=True

Next

End Sub

运行成功后,需要的数据保存在第二个表格Sheet2里,原始数据在Sheet1里。

VBA使用方法知道吗?网上有很多介绍。

四、word只有一页,打印一次编码增加一

1.使用邮件合并功能可快速完成。

2.首先新建一个excel文件,在一列中输入1 、2 、3---到自己需要打印的份数序号。并保存文件。

3.回到word文件,点击邮件---开始合并邮件----普通word文档。

4.点击选择收件人---使用现有列表,浏览找到刚创建的excel文件。

5.将鼠标定位到需要加编号的位置,点击插入合并域,此时就会出现excel文件中的列名。

6.点击预览效果可查看序号情况,最后点击完成并合并下拉中选择打印文档,打印所有即可。

转载请注明出处51数据库 » vba只打印word第一页

软件
前端设计
程序设计
Java相关