Excel 是否能只允许输入2000年到2015年之间的升序日期

疑难场景

公司成立于2000年,因此制表时所用到的时间都大于等于2000年、小于等于2015年。同时,由于报表中涉及时间时一律要求升序排列,如果下方单元格的时间小于上方单元格的时间则表示输入有误。此外,禁止日期区域的两个日期之间有空白单元格,即所有日期都需要填写完整,不能跳过一个日期。应该如何设置才能让单元格符合以上3个条件呢?

解题步骤

设置数据验证可以让指定区域只能输入2010年到2015年的升序日期,具体步骤如下。

1.选择需要进行限制的区域A2:A20。

2.单击功能区的“数据”→“数据验证”,弹出“数据验证”对话框。

3.将“允许”下拉列表中的“任何值”修改为“自定义”,然后在“公式”文本框中输入以下公式:

公式表示A2的值必须大于等于2010年1月1日、小于2015年12月31日、大于等于A1单元格的数值(如果A1是文本则当作0计算)、A1单元格不能等于空值。

公式中的A2和A1采用的是相对引用,因此公式在不同单元格中时,公式中的A2和A1将代表不同的单元格。对于A2单元格的数据验证,采用的是公式

而A4单元格会将A2变成A4、将A1变成A3,其数据验证公式为

简言之,公式中的A2和A1并非代表A2单元格和A1单元格,而是当前单元格与上一个单元格,公式在不同单元格中A2和A1将代表不同的对象。

4.打开“数据验证”对话框的“出错警告”选项卡,“样式”保持“停止”不变,将“标题”设置为“友情提示”,将“错误信息”设置为“1.只能是2010年到2015年之间的日期2.必须是升序的日期3.上方不能有空白单元格”。图3.18和图3.19分别是设置公式与设置出错警告信息。

由于公式较长,在图 3.18 中未完整显示公式,请读者直接使用案例文件,在文件中有完整的公式。

使用公式限制单元格

图3.18 使用公式限制单元格

图3.19 指定警告信息

5.在“数据验证”对话框中单击“确定”按钮返回工作表界面。

6.在A2单元格输入日期2008-9-1,单击Enter键后Excel将弹出如图3.20所示的警告信息,同时禁止用户输入。

7.单击“重试”按钮,重新输入日期“2010-10-5”,由于此日期符合所有要求,因此Excel允许正常输入。

8.在A3单元格录入日期“2010-2-8”,由于当前日期不符合“大于等于上方单元格的日期”这个条件,因此Excel会弹出如图3.21所示的提示信息,同时禁止用户输入。

图3.20 日期小于2010年

图3.21 非升序日期

9.单击“重试”按钮,然后重新输入日期“2012-12-8”,此日期可以正常输入。

10.选择 A5 单元格,然后输入日期“2015-8-9”,尽管此日期在指定的范围之内,且大于前面的所有日期,但是不符合“上方单元格不能空白”的条件,因此Excel会禁止输入,同时弹出如图3.22所示的警告信息对话框。

图3.22 上方单元格空白

通过测试可以确定本例的数据验证设置满足所有需求。

知识扩展

1.DATE(2010,1,1)代表2010年1月1日,不能使用“"2010-1-1"”或“"2010年1月1日"”来代表2010年1月1日,因为它们都是文本,而DATE(2010,1,1)才是真正的日期值。

2.DATE(2015,12,31)代表2015年的最后一天,同理不能使用“"2015-12-31"”或“"2015年12月31日"”。

3.N函数可以将文本转换成0,数值保持不变,例如:

=N("Excel")——运算结果为0

=N(2015)——运算结果为2015

在本例中,由于上方的一个单元格有可能是日期值也有可能是文本,使用N函数将A1转换成数值后再与A2进行比较,否则A2单元格不管输入什么日期都会禁止输入,因为任意日期值都小于文本值。

4.Excel对数据的大小排序是:

逻辑值>文本>字母>数值

其中逻辑值包含 True 和 False,文本包含汉字、标点符号、片假名等,字母即 A~Z 和 a~z各26个英文字母。数值包含正数、负数、0,日期也是数值,仅仅显示形态不同于数值,但其本质仍是数值。

根据以上排序可以得知,任意文本都是大于数值和日期的,因此当 A1 是文本、A2 是日期时,A1总是大于A2。

5.And函数用于校验多个条件是否全部成立,本例中使用了3个条件,即And函数的3个参数。And函数支持1~255个参数。

6.设置数据验证时,不管当前选中了多大的区域,公式中只写左上角一个单元格,Excel会自动将这个公式应用到所有单元格中,而且公式会随单元格地址变化而变化,自动适应,不过前提是公式中的单元格采用相对引用。

7.通过数据验证对单元格的值进行限制时,如果是简单的限制,使用“允许”下拉列表的各种现成设置足以应付,像本例这种复杂的多条件限制则必须通过公式来限制。

8.多条件限制时只能通过公式一次性指定多个条件,不能分多次设置数据验证,像条件格式那样多个条件并存,因此本例中不同的错误类型只能共用一条警告信息。

请在封面中缝指定的QQ群下载文件和视频教材,从而方便练习,同时验证本案例中的技巧与操作结果。

Excel 如何禁止输入重复值

如下图所示的工作表中A列用于存放职工工号。由于姓名允许重复,但工号不允许重复,因此要求在A输入数据时,Excel自动检查是否重复,如果重复则弹出提示信息,要求用户重新输入。

职工信息表

解题步骤

限制某区域不能输入重复值宜用数据验证,具体步骤如下。

1.选择A2:A10区域。

2.单击功能区的“数据”→“数据验证”,弹出“数据验证”对话框。

3.将对话框中“允许”下拉列表中的“任何值”修改为“自定义”。

4.在公式框中输入以下公式,操作界面如图3.14所示。

5.打开“数据验证”对话框的“出错警告”选项卡,“样式”保持“停止”不变,将“标题”设置为“友情提示”,将“错误信息”设置为“当前值在A2:A10区域已经存在,请重新录入”,设置界面如图3.15所示。

图3.14 使用公式限制A2∶A10只能输入唯一值

图3.15 设置出错警告

6.单击“数据验证”对话框中的“确定”按钮返回工作表界面,在A2:A3单元格输入工号34和35,然后在A4单元格再次输入工号34,当单击Enter键后,Excel会弹出图3.16所示的提示框,必须单击“重试”按钮,然后输入其他不重复的值,否则无法输入成功。

输入重复值时的错误提示

图3.16 输入重复值时的错误提示

知识扩展

1.COUNTIF函数属于Excel的统计函数,用于计算区域中符合某个条件的数据个数。例如,等于100的单元格数量、大于999的单元格数量、包含“合格”二字的单元格数量,或者计算不等于某个单元格的单元格数量。本例采用COUNTIF函数计算A2:A10区域中值等于当前单元格的值的单元格数量。

2.COUNTIF函数的语法如下:

COUNTIF(range,criteria)

它包含两个必选参数,第一参数代表要对其进行计算的区域,第二参数代表要计算的条件。假设要计算A1:A10区域中大于500的单元格数量,那么宜采用以下公式:

=COUNTIF(A1:A10,">500")

假设要计算A1:A10区域中等于500的单元格数量,那么宜采用以下公式:

=COUNTIF(A1:A10,500)

当第二参数是数字时可以不用等号也不加双引号。

假设要计算A1:A10区域中包含“螺丝”的单元格数量,那么宜采用以下公式:

=COUNTIF(A1:A10,"*螺丝*")

第二参数“*螺丝*”表示包含“螺丝”,前后的“*”代表任意长度的任意字符,即以任意字符开始、任意字符结尾、中间包含“螺丝”二字的字符串。公式的运算效果如图3.17所示。

图3.17 计算A1∶A10区域中包含“螺丝”的单元格数量

3.本例中公式“=COUNTIF($A$2:$A$10,A2)=1”代表A2:A10区域中任意单元格的值只允许出现一次,如果重复则会弹出提示对话框警告用户。

4.数据验证仅对设置后手工输入数据有效,如果先输入字符后设置数据验证,那么 Excel不会提示不符合规则的数据。

5.数据验证对公式也没有限制,限制A1单元格只能输入1~10之间的数值,当在A1单元格手工输入11时会禁止输入,但是A1单元格通过公式引用A2单元格的值,在A2单元格中输入11时,A1单元格也会产生11,而且不产生任何提示。

请在封面中缝指定的QQ群下载文件和视频教材,从而方便练习,同时验证本案例中的技巧与操作结果。

Excel 如何禁止输入不规范的日期

工作中会经常收到同事发来的包含不规范日期值的报表,从而导致后期运算出错。例如“2015.7.15”、“2015年7月15号”、“07.15.2015”、“20150715”等格式都属于不规范的日期值,无法使用日期函数对它们执行运算。是否可以在前期设计表格模板时禁止用户输入不规范的日期?

解题步骤

假设有图3.6所示的销量报表模板,要求对A2:A9区域加以限制,从而提升日期值的准确性,操作步骤如下。

图3.6 销量报表模板

1.选择A2:A9区域。

2.单击功能区的“数据”→“数据验证”,弹出“数据验证”对话框。

3.将对话框中“允许”下拉列表中的“任何值”修改为“日期”,表示只允许在 A2:A9 区域输入日期。

4.根据实际工作需求对“开始日期”和“结束日期”指定范围。例如,当前工作表只允许输入2015年和2016年的日期,那么就分别输入“2015-1-1”和“2016-12-31”。设置结果如图3.7所示。

5.打开“数据验证”对话框的“出错警告”选项卡,“样式”保持“停止”不变,将“标题”设置为“友情提示”,将“错误信息”设置为“请按标准的日期格式输入,有效范围在2015-1-1到2016-12-31之间”,设置结果如图3.8所示。

指定日期范围

图3.7 指定日期范围

设置出错警告

图3.8 设置出错警告

6.单击“数据验证”对话框中的“确定”按钮返回工作表界面,在 A2 单元格输入不规范的日期“2015.2.28”,当单击Enter键后将弹出图3.9所示的错误提示信息。

图3.9 输入格式不规范的日期时产生错误提示

7.单击“重试”按钮,继续输入日期“2014-5-7”,Excel会产生相同的提示信息,表示格式有误、范围有误时都禁止操作。

知识扩展

1.“2015.7.15”、“2015年7月15号”、“07.15.2015”、“20150715”等都不是规范的日期,所有日期函数都无法对它们执行日期运算。

例如,Month函数可以计算一个日期属于几月份,图3.10和图3.11两个图片分别展示了错误格式的日期和正确格式的日期的运算结果。

图3.10 错误的日期执行日期运算时出错

图3.11 正常计算出月份

2.正确的长日期有三种格式(排除英文格式),包含“2015-7-15”、“2015/7/15”和“2015年7月15日”。当在单元格中输入最后一种格式的日期时,Excel会自动将它转换成“2015/7/15”格式的日期。

3.日期其实就是数值,只是它呈现出的形态与数值不同而已,本质上是一样的。例如2015年8月8日等同于数值42224,只是显示为日期样式而已。因此日期必须是数值,不管其外观如何变化。假设按文本形式输入日期则无法参与数值运算,对工作带来负面影响。“2015.8.8”就是文本形式,所有日期函数都无法对该值执行日期运算。

4.为什么42224代表2015年8月8日呢?Excel以1900年1月1日作为初始日期,日期1900年1月1日被当作第一天,那么相对于1900年1月0日之后的第42224天则刚好是2015年8月8日。可以如此验证:在A1单元格录入数值42224,然后依次单击功能区的“开始”→“数字格式”→“长日期”,单元格中的42224马上会显示为2015年8月8日,效果如图3.12所示。

通过设置格式改变数值的显示形态

图3.12 通过设置格式改变数值的显示形态

Excel 如何禁止在某区域输入文本

在图3.1中,C2:D11区域需要录入数值(E2:E11、C12:E12是公式计算出来的,不需要输入值),由于担心该区域错误地输入了文本而导致后续运算出错,因此要求限制该区域不能输入文本。如何操作才能仅允许C2:D11区域输入数值呢?

图3.1 产量表

解题步骤

对区域进行数据类型限制一般通过设置数据验证来实现,具体步骤如下。

1.选择C2:D11区域。

2.单击功能区的“数据”→“数据验证”,弹出如图3.2所示的“数据验证”对话框。

3.在“允许”下拉列表框中将“任何值”改为“整数”,表示此区域禁止输入整数以外的值。

4.由于产量不能是负数,同时不会大于2000,因此将“最小值”设置为0,最大值设置为2000。设置界面如图3.3所示。

默认状态的“数据验证”对话框

图3.2 默认状态的“数据验证”对话框

图3.3 为C2∶D11区域指定验证条件

5.打开“数据验证”对话框的“出错警告”选项卡,“样式”保持“停止”不变,将“标题”设置为“友情提示”,将“错误信息”设置为“不能录入文本,只能录入0到2000之间的数值”,设置结果如图3.4所示。

6.在“数据验证”对话框中单击“确定”按钮返回工作表界面,然后在C11单元格输入字符9oo(后面两位不是数值0而是字母o),当按下Enter键后将弹出图3.5所示的提示框。

图3.4 设置出错警告

输入文本时自动产生警告

图3.5 输入文本时自动产生警告

7单击“重试”按钮,然后重新输入数值900,当按下Enter键后Excel不再弹出任何提示,表示输入的数据符合要求。

知识扩展

1.数据验证在Excel 2010及更早的版本中称为数据有效性,它用于控制区域中允许录入的字符类型,可以限制区域中只能输入某个范围的整数、小数、日期值、时间值,也可以限制区域中只能输入某些具体的单词,其中最强大、灵活的是“自定义”,通过公式可以限制任何类型。

2.数据验证可以理解为单元格的一种属性、一种格式,它可以很轻易地被清除。例如,将一个未设置数据验证的单元格复制到已经设置了数据验证的单元格时,由于复制时默认包含单元格的一切格式信息,因此目标单元格的格式会被覆盖掉,导致单元格的数据验证设置丢失,从而不会报警。换言之,数据验证仅对手工输入数据有效,对复制、粘贴操作无效。

3.对于错误输入时产生提示,Excel提供了两套安全机制:其一是数据验证——位于“数据”选项卡;其二是使用条件格式,其菜单位于“开始”选项卡。两者的区别是数据验证有强制性,数据错误时会弹出提示对话框从而中断操作,而条件格式仅通过单元格颜色、边框或字体颜色来提醒用户,用户可以完全忽略这些提示而继续操作。因此通俗地讲,如果只想获得通知信息则采用条件格式;如果需要在接收到提示信息后必须做出响应才能消除该信息,则宜采用数据验证。

请在封面中缝指定的QQ群下载文件和视频教材,从而方便练习,同时验证本案例中的技巧与操作结果。

Excel 2016是否可以在取消合并后还原合并前的数据

图2.55演示了对A列的省名执行合并、取消合并操作前后的状态变化,简言之,对区域执行合并后再取消合并,无法保留原本的数据,有什么办法突破此限制,从而取消合并后使以前的数据都能得以保留呢?

图2.55 对单元格执行合并前后的状态变化

解题步骤

在辅助区域执行合并居中,然后将已经合并的区域的格式复制到待合并区域中,从而让待合并区域实现合并效果但不会删除部分内容。

此方法产生的合并区域在取消合并后将可以还原所有数据,具体操作步骤如下:

1.像图2.56一样将A列复制到D列中。

2.选择 A2:A4 区域后单击功能区的“开始”→“合并后居中”,然后在弹出的提示对话框中单击“确定”按钮完成合并。

3.重复步骤2,将A5:A8和A9:A11区域也一起合并,图2.57是合并后的效果。

图2.56 将A列复制到D列

图2.57 逐一合并D列的省名

4.复制D列,然后选择A列并单击右键,从右键菜单中单击选项中的“格式”按钮,操作界面如图2.58所示,操作结果如图2.59所示。

将D列的格式粘贴到A列

图2.58 将D列的格式粘贴到A列

粘贴后的A列显示效果

图2.59 粘贴后的A列显示效果

执行以上操作后,如果选择A列再单击功能区的“开始”→“合并后居中”,A列将回到图2.56所示的状态,所有数据都会自动还原。

知识扩展

1.使用Excel内置的合并后居中功能对区域执行合并,当区域内包含多个非空单元格时Excel只会保留左上角的单元格的值,其他单元格的值会自动消失,因此取消合并后原本的合并区域将只有左上角的单元格才有值,其他单元格都会显示为空白。

2.将合并区域的格式复制到另一个大小相同的区域后,目标区域会显示为被复制区域的相同格式,但是此时仅调整了格式而未执行合并后居中的操作,不会丢失数据,当取消合并后,所有数据都会自动显示出来。

3.本例中每个待合并区域的所有单元格的值都一样。事实上,如果多个单元格的值完全不同,也可以使用本例的方法执行合并,取消合并后仍然可以还原所有值。例如,图2.60中A1:C1区域的值互不相同,借用本例的方法合并后只剩下四川两个字,而取消合并后可以还原所有值,与合并前的状态完全一致。

图2.60 合并居中前后的效果图

请在封面中缝指定的QQ群下载文件和视频教材,从而方便练习,同时验证本案例中的技巧与操作结果。

Excel 2016 怎样才能避免插入工作表的图片被误删除

有时需要在工作表中插入签名图片、公司 LOGO 或类似的图片,不想让他人太轻易就删除图片,或者避免误删除,应该如何操作呢?

解题步骤

在工作表中插入的图片可以轻松删除。选中图形对象后按下键盘上的Delete键就可以删除,在意外情况下,如有物品压在键盘上的Delete键之上就足以删除图片了。

如果通过ActiveX控件插入图片,则可以大大提升删除图片的难度,不管是主观故意还是误删,具体操作步骤如下。

1.单击菜单“文件”→“选项”,弹出“Excel选项”对话框。

2.单击“自定义功能区”,然后选择右方的“开发工具”复选框,操作界面如图2.50所示。

图2.50 显示“开发工具”

3.单击“确定”按钮保存设置,同时返回工作表界面。

4.单击功能区的“开发工具”→“插入”→“图像(ActiveX 控件)”,然后在工作表中按下鼠标并向右下角拖放从,而绘制一个图像控制。图2.51是调用图像控件的菜单,图2.52是插入到工作表中的图像控件。

图2.51 图像控件菜单

图2.52 插入到工作表中的图像控件

5.单击功能区的“开发工具”→“属性”,弹出“属性”对话框。

6.单击属性对话框中“Picture”属性右方的按钮,在弹出的“加载图片”对话框中选择图片文件(本例采用三星公司的LOGO图片为例),然后单击“打开按钮”从而加载图片到图像控件中。图2.53中鼠标指针处的按钮即用于加载图片。

7.为了让图片在图像控件中显得美观,还需要将“PictureSizeMode”属性值修改为1。图2.54为调整后的图像控件显示效果。

图2.53 加载图片的按钮

图2.54 调整图片在图像控件中的显示方式

8.关闭“属性”对话框,然后单击功能区的“开发工具”→“设计模式”,从而退出设计模式。此时图像控件会显示三星公司的LOGO,但是无法选中此图片,因而也就无法删除图片。

知识扩展

1.“开发工具”选项卡默认是隐藏的,必须通过自定义功能区将它显示出来。

2.图像控件必须在设计模式下才可以修改和删除,退出设计模式后就不能对图像控件做任何操作,包含选中、删除、编辑。

3.“设计模式”菜单中有一个切换按钮,单击时进入设计模式,按钮呈按下状态;再次单击则退出设计模式,按钮呈弹起状态。可以根据按钮的状态判断当前是否处于设计模式中。

4.不允许将png格式的图片显示在图像控件中。

5.“PictureSizeMode”属性值为 0 时图片将按原来的大小和比例显示在图像控件中;“PictureSizeMode”属性值为 1 时图片将自动调整比例和大小,从而填充满图像控件;“PictureSizeMode”属性值为 3 时图片将按原来的比例显示在图像控件中,但是大小可以随图像控件的大小而相应变化。

6.如果要移动图像控件的位置,必须进入设计模式后再操作,移动后再退出设计模式。

Excel 2016 是否可将工作簿保存为PDF文件

将Excel文件发给领导或客户后,有可能由于各种原因误删除单元格数据或由于杂物掉在键盘上误改数值,从而影响报表查看者的工作。能否将工作表转换成 PDF 文件再发出去,从而避免以上问题呢?

解题步骤

Excel从2007版开始允许将工作簿另存为PDF文件,2003版本则不支持。在Excel 2016中将Excel文件另存为PDF格式的步骤如下。

1.单击功能区的“文件”→“另存为”→“计算机”→“浏览”。

2.在“另存为”对话框中选择要保存的文件路径,然后将“保存类型”由默认的格式修改为“PDF(*.pdf)”,将“文件名”修改为“5日产量表”,操作界面如图2.47所示。

图2.47 指定保存路径、格式和名称

由于默认状态下Excel只能将活动工作表的值转换成PDF文件,因此需要将整个工作表的值都转换成PDF文件时还需要设置选项。

3.单击“另存为”对话框中的“选项”,然后将“发布内容”由默认的“活动工作表”修改为“整个工作簿”,操作界面如图2.48所示。

图2.48 修改发布内容

4.单击“确定”按钮,Excel会瞬间将活动工作簿的所有数据都转换成PDF文件并保存在指定的路径下,而且会自动打开PDF文件供用户验证。

知识扩展

1.Excel将工作簿转换成PDF文件后,需要安装PDF阅读器才能查看PDF文件的内容,Excel只能输出PDF、不具备阅读PDF文件的能力。

2.PDF文件不像 Excel工作簿那么方便修改,从而在一定程度上避免了误删除数据或误改数据的意外情况。

3.Excel能生成PDF文件,但不具备加密PDF文件的功能。Adobe Acrobat Professional软件可以将 PDF 文件加密,包括无密码不能打开,以及只允许阅读不允许打印,或者只允许阅读不允许修改(使用PDF编辑器也无法修改)、只允许阅读不能复制数据等。图2.49是一个已经加密的PDF文件,在文件名称右方会标注“已加密”,同时“打印”按钮呈禁用状态。

图2.49 加密PDF文件后可以禁止打印、修改

4.使用Word 2013可以直接打开Excel生成的PDF文件,而且能修改。如果将Excel工作簿另存为PDF文件,为了提升安全性,有必要使用Adobe Acrobat Professional软件对PDF文件加密。

Excel 2016 如何在每天开机时自动备份所有的Excel文件

E盘中有很多文件,包含Excel文件、Word文件、安装软件、公司的施工图和分布图等不同格式的文件。由于多数Excel文件都需要每天更新,其他格式的文件则可能数月不变,因此现在需要每天开机时自动备份E盘的所有Excel文件到F盘的“Bak”文件夹中,当E盘的Excel文件丢失或错误修改后可以用F盘的文件覆盖回来。

解题步骤

定时备份文件和定时备份文件夹一样,都需要使用DOS命令和Windows自带的任务计划程序,不过复制文件和复制文件夹的DOS命令并不相同。具体操作步骤如下。

1.在C盘根目录中新建一个文本文档,其默认名称是“新建文本文档.txt”。

2.双击打开“新建文本文档.txt”,然后在其中输入DOS命令:

其中copy是用于复制文件的DOS命令,后面的所有字符是此命令的参数。

“/y”表示复制过程中遇到已经存在的同名文件时不弹出询问是否覆盖文件的提示框,从而避免复制过程被中断。

“e:\*.xls*”代表要复制的文件路径和文件类型,“*.xls*”代表后缀名包含xls的文件,其实就是“*.xls”、“*.xlsx”和“*.xlsm”三种常用的Excel文件。

“f:\bak\”表示目标路径,可以随意指定,但是必须是本机存在的磁盘路径。例如,只有C、D、E、F4个盘时,不能将文件备份到G盘去。

3.将文件名称修改为“备份文件.bat”,然后在F盘新建一个名为“Bak”的文件夹。

4.单击Windows的开始菜单(假设所用的是Windows 7)→所有程序→附件→系统工具→任务计划程序,弹出“任务计划程序”对话框。

5.在“任务计划程序”对话框中单击菜单“操作”→“创建计划任务”,弹出“创建基本任务向导”对话框,并在对话框中指定当前新任务的名称为“备份文件”,操作界面如图2.42所示。

图2.42 指定任务名称

6.单击“下一步”按钮,然后在新的对话框中选中“计算机启动时”单选按钮,操作界面如图2.43所示。

图2.43 指定任务启动时间

7.单击“下一步”按钮,然后在新的对话框中保持默认选中“启用程序”单选按钮,操作界面如图2.44所示。

图2.44 指定任务要执行的操作

8.单击“下一步”按钮,然后在新的对话框中单击“浏览”按钮,找到C盘的“备份文件bat”文件后单击“打开”按钮,从而指定脚本文件的路径,操作界面如图2.45所示。

图2.45指定任务的脚本文件路径

9.单击“下一步”按钮,进入任务计划的最后界面。不修改任何选项,直接单击“完成”按钮完成任务计划,操作界面如图2.46所示。

图2.46 完成任务计划

10.关闭“任务计划程序”,重启计算机,然后在F盘的“BAK”文件夹中可以看到来自E盘的所有Excel文件。

知识扩展

1.copy命令用于复制文件,Xcopy则用于复制文件夹。

2.copy命令不能复制子文件夹中的文件,若要包含子文件夹的文件,需要使用 for命令执行循环复制,命令如下:

它表示复制E盘中的所有Excel文件到F盘的“BAK”文件夹。

3.在进行到第6步时,包含“计算机启动时”和“当前用户登录时”两个选项,前者表示不管用什么用户名登录都执行当前任务,后者表示只有当前用户登录时才执行任务。对于一台计算机有多人使用且分别采用多个用户名登录时可以采用后者备份。

4.当文件很多时,复制文件的时间也相应延长。如果想在中途中断命令,按下组合键<Ctrl+C>即可。

Excel 2016 是否可以定时备份文件夹

公司有一台服务器,服务器上有一个共享文件夹,是否可以将“E:\生产表”路径下的所有文件和子文件夹都在每天17:30自动备份到服务器的共享文件夹中呢?

服务器的IP地址是192.17.108.2。

解题步骤

备份单个文件可以使用Excel的内置功能实现,但是备份整个文件夹则最好使用Windows的计划任务搭配DOS命令来实现。具体的操作步骤如下。

1.在C盘根目录中新建一个文本文档,其默认名称是“新建文本文档.txt”。

2.双击打开“新建文本文档.txt”,然后在其中输入DOS命令:

其中,Xcopy是用于复制文件夹的DOS命令,后面的所有字符都是此命令的参数。

“/s”表示复制文件夹时将子文件夹也一并复制,同时跳过空目录。

“/f”表示复制过程中显示当前正在复制的文件夹的名称和文件名称。如果将/f修改为/q,则不显示子文件夹名称和文件名称,复制速度更快。

“/y”表示复制过程中遇到已经存在的同名文件时不弹出询问是否覆盖文件的提示框,从而避免复制过程被中断。

“E:\生产表”代表要复制的文件夹。在复制前要确认此文件夹的所有文件体积小于目标文件夹的剩余空间。

“\\192.17.108.2\元浩文件\财务备份\”要分三段理解,其中“\\192.17.108.2”代表文件服务器的 IP 地址,“元浩文件”代表服务器中共享的文件夹名称,“财务备份”则代表用于存放本机要备份文件的文件夹(假设本机代表财务部,文件只放在“财务备份”这个文件夹中,其他部门的文件则放在其他文件夹中,从而便于识别和管理)。

3.将文件名称修改为“备份.bat”,从而使文本文件变成批处理文件。图 2.31 是批处理文件的图标,图2.32则是批处理文件的DOS命令。

图2.31 批处理文件图标

批处理文件中的DOS命令

图2.32 批处理文件中的DOS命令

4.单击Windows的开始菜单(假设用的是Windows 7)→所有程序→附件→系统工具→任务计划程序,从而打开图2-33所示的“任务计划程序”界面。

图2.33 “任务计划程序”界面

5.在“任务计划程序”对话框中单击菜单“操作”→“创建基本任务”,弹出“创建基本任务向导”对话框,并在对话框中指定当前新任务的名称为“备份文件夹”,操作界面如图2.34所示。

图2.34 指定任务名称

6.单击“下一步”按钮,然后在新的对话框中保持默认设置“每天”,操作界面如图 2.35所示。

指定任务执行周期

图2.35 指定任务执行周期

7.单击“下一步”按钮,然后在新的对话框中将开始时间设置为今日的17:30:00,操作界面如图2.36所示。

指定任务开始时间

图2.36 指定任务开始时间

8.单击“下一步”按钮,然后在新的对话框中保持默认设置“启用程序”,操作界面如图2.37所示。

指定任务要执行的操作

图2.37  指定任务要执行的操作

9.单击“下一步”按钮,然后在新的对话框中单击“浏览”按钮,找到C盘的“备份.bat”文件后单击“打开”,从而指定脚本文件的路径,操作界面如图2.38所示。

指定任务的脚本文件路径

图2.38 指定任务的脚本文件路径

10.单击“下一步”按钮,最后一个界面如图2.39所示。单击其中的“完成”按钮,从而完成设置。

完成任务设置

图2.39 完成任务设置

11.关闭“任务计划程序”,重启计算机,当时间到了17:30:00时,Windows会自动将“E:\生产表”下的所有文件和子文件夹一并复制到服务器的共享文件夹中去。假设共享文件夹中有名为“财务备份”的文件夹,那么就复制“E:\生产表”下的所有文件和子文件夹;假设共享文件夹中没有名为“财务备份”的文件夹,则DOS命令会自动在“元浩文件”中创建一个“财务备份”文件夹,然后再复制“E:\生产表”下的所有文件和子文件夹到“财务备份”中去。

知识扩展

1.DOS命令和任务计划程序各司其职、组合分工,前者用于复制文件夹,后者用于指定复制文件夹的开始时间和周期。

2.由于Windows 8不存在开始菜单,因此Windows 7和Winows 8打开任务计划程序的步骤不同。但是Winows 7和Winows 8有一个通用的办法打开任务计划程序,步骤是:使用组合键<Windows+R>,弹出“运行”对话框,然后输入命令“taskschd.msc”,并单击“确定”按钮,操作界面如图2.40所示。

通过命令打开任务计划程序

图2.40 通过命令打开任务计划程序

3.任务计划程序可以指定多个计划,在不同时间段执行。

4.批处理文件中可以存放多行命令,而不仅局限于备份一个文件夹。例如,按图2-41所示的方式编写命令则可以分别备份三个文件夹。

让一个文件执行多项命令

图2.41 让一个文件执行多项命令

5.本例的Xcopy用了5个参数,每两个参数之间都必须有空格,否则代码无法正确执行。

6.案例中的代码“\\192.17.108.2”是作者的服务器IP地址,不同公司的服务器会采用不同的IP地址,读者需要根据实际情况修改。

7.从安全性上讲,将文件备份到其他计算机(服务器)比备份到自己计算机的其他磁盘更好,但是如果没有专用的服务器,或者仅有一台家用计算机,那么只能将文件备份到同一个硬盘的另一个文件夹中,此时直接将上面的IP地址修改为盘符即可。

例如,需要将“E:\生产表”备份到“F:\备份\”中去,可按以下方式编写DOS命令:

8.备份时本机和服务器必须处于开启状态,只要有一台未开启就会备份不成功。任务计划程序不会自动开启计算机,也不会延迟到对方开机时再执行备份,只能等下一次17:30:00到来后再备份。

9.备份文件夹的时间最好选在休息时间,如午餐时间或晚餐时间,也可以是早上开机时。最好不要选工作时段,文件处于编辑状态中是不宜备份的。

10.每天备份的文件最好仅针对常用的文件夹,对于不常用的文件夹,手工复制一次即可。

Excel 2016 如何删除文件的打开权限密码

同事发来一个文件,告知了我打开密码,但是该文件每天都需要打开查看,每次打开文件都需要输入密码,过程太烦琐。有什么办法清除文档的打开密码呢?

解题步骤

在文件菜单中有“保护工作簿”二级菜单,通过它的子菜单可以解除文档打开密码,具体步骤如下。

1.单击功能区的“文件”→“信息”→“保护工作簿”→“用密码进行加密”,操作界面如图2.29所示。

图2.29 “用密码进行加密”菜单

2.清除“加密文档”对话框中的密码,然后单击“确定”按钮保存设置。图2.30为“加密文档”对话框。

图2.30 “加密文档”对话框

3.保存文件,然后重新打开工作簿,此时可以发现工作簿已经可以随意开启。

知识扩展

1.只有已知文档密码时才能删除,在不知道密码的情况下很难破解文档密码。

2.如果文件的后缀名是“*.xls”,那么密码的安全性会偏低一些,利用软件可以解除密码。为了提升安全性,文档另存为“*.xlsx”格式,则很难破解文档密码。

3.对文件加密或解密都只能一次操作一份文档,如果要批量操作,必须使用Excel VBA。如果读者对Excel VBA编程有兴趣,可以查阅本书作者的另一本图书《Excel VBA程序开发自学宝典(第3版)》。

请在封面中缝指定的QQ群下载文件和视频教材,从而方便练习,同时验证本案例中的技巧与操作结果。