excel表格问题 1.怎么设置必须先保存才能打印 2.怎么设置每新增一个工作表自动流水编号?

作者&投稿:掌爱 (若有异议请与网页底部的电邮联系)

  • 一:

在Excel窗口中依次点击:文件->选项->信任中心->信任中心设置,记下"Excel启动"这个目录。

打开一个新工作簿只保留一张表→预设好格式→另存为,在打开"另存为"对话框中按下面顺序操作:

  1. 文件名:Sheet.xltx

  2. 保存类型:选择“Excel模板(*.xltx)” 

  3. 上面地址栏:找到之前记录下的Excel启动目录

→保存后关闭所有Excel文件。

  • 二:

打开一个合适的送货单Excel文件。

点击"文件"->"选项"->"信任中心"->"信任中心设置"->"宏设置"->选择"启用所有宏",确定。

然后回到工作簿中,按ALT+F11组合键打开VBE窗口,执行"插入"->"类模块",保持系统默认名"类1"。

1、双击"类1"模块,在右边空白窗口复制下面代码:

Public WithEvents AppEvents As Application

Private Sub AppEvents_WorkbookBeforePrint(ByVal Wb As Workbook, Cancel As Boolean)

    Wb.Save

End Sub

Private Sub AppEvents_WorkbookNewSheet(ByVal Wb As Workbook, ByVal Sh As Object)

    Sh.Name = Format(Date, "yymm") & Format(Wb.Sheets.Count, "000")

End Sub

2、接着双击"ThisWorkbook"模块,在右边空白窗口复制下面代码:

Dim AppObject As New 类1

Private Sub Workbook_Open()

    Set AppObject.AppEvents = Application

End Sub

回到Excel中,另存这个送货单文件,保存类型选"Excel启用宏的工作簿(*.xlsm)",文件名不变。保存后关闭文件。

  • 三:

以后无论何时打开这个送货单文件(xlsm格式的):

1、在新建工作表的时候,就会自动套用预设格式,并且工作表名称为自动更新的流水号(如需表内某位置单号递增另行说明)。

2、在打印时会自动提前保存工作簿。



~