雅各布天梯实验视频:用VBA(编程)保护Excel文档

来源:百度文库 编辑:九乡新闻网 时间:2024/04/30 04:46:13
Excel制表技巧(12)1997
      37.用VBA(编程)保护Excel文档

  VBA(Visual Basic for Application)是Excel应用程序中功能非常强大的编程语言,为了规范不同的用户对Excel应用程序的访问能力,需要对Excel文档及有关的数据进行有效的保护, 这里根据自己及同行们的体会,从以下二个方面介绍用VBA编程法实现对Excel文档的保护。

1.利用VBA中Workbook对象的SaveAs方法实现对工作簿的保护, 下面就对SaveAs有 关的参量作一介绍:

Filename:该字符串表示要保存的文件名。 可包含完整路径。 如果不指定路径,Microsoft Excel 将文件保存到当前文件夹。
FileFormat: 可选,文件的保存格式。
Password :为一个区分大小写的字符串(不超过15个字符) ,用于指定文件的保护密码。
WriteResPassword: 该字符串表示文件的写保护密码。 如果文件保存时带有密码,但打开文件时不输入密码,则该文件以只读模式打开。
ReadOnlyRecommended :如果为True则在打开文件时显示一条信息,提示该文件以只读模式打开。

        下例就是在Excel应用程序中添加一工作簿,将工作簿按常规文件格式存为“C:\pj\obj\经济评价.xls”文件,并给该文件指定保护密码“12”以及写保护密码“23”。

对工作簿的保护

Sub 保护工作簿()
NewWorkbook = Workbooks.add
NewWorkbook.SaveAs FileName: ="C: \pj\obj\经济评价.xls", FileFormat: =
XlNormal,Password:="12",WriteResPassword:=″23″
End sub

2.利用VBA中Workbook对象的Protect方法对工作簿的结构和窗口进行保护,Workbook对象的Protect方法带有以下三个参量:

Password: 为加在工作表或工作簿上区分大小写的密码字符串。 如果省略本参数,不用密码就可以取消对该工作簿的保护。否则,取消对该工作表或工作簿的保护时必须提供该密码。如果忘记了密码,就无法取消对该工作表或工作簿的保护。最好在安全的 地方保存一份密码及其对应文档名的列表。

Structure: 若为True则保护工作簿结构(工作簿中工作表的相对位置)。默认值为False。
Windows 若为True则保护工作簿窗口。

下例就是对一名为“经济评价.xls”的工作簿实现“结构”和“窗口”保护:

Sub 保护工作簿()
Workbooks (″经济评价″) .Protect Password: ="1234", Structure: =True,
Windows:=True
End sub

Workbook对象的Unprotect方法用于取消对工作簿的保护。Unprotect方法只有一个参量,就是保护工作表时所用的口令。

3.对工作簿进行隐藏保护,可使他人无法看到其对应的窗口。操作方法如下:
在VBA中使用Workbook对象下面的Windows对象的Visible属性对工作簿进行隐藏和取消隐藏,Visible属性的值可取“True”和“False”两种。
下面程序代码完成对工作簿“book.xls”的隐藏:

Sub 隐藏工作簿()
Workbooks("book").Activate
ActiveWindow.Visible = False
End sub
或:
Sub 隐藏工作簿()
Workbooks("book").Windows(1).Visible=False
End sub

对工作表的保护

1.对工作表实现口令保护利用VBA调用Worksheet对象的Protect方法对工作表进行保护,Protect带有以下参量:
Password 用于保护工作表的口令。
Drawingobjects 若为True,则对工作表中的Drawingobjects对象进行保护,缺省值为True。
Contents 若为True,则对单元格内容进行保护,缺省值为True。
下面程序代码完成对工作表“基础数据表”的保护:
Sub 保护工作表()
Worksheets(″基础数据表″).Protect Password:="1234"
End sub

2.对工作表实现隐藏保护,使他人无法看到工作表:
利用VBA设置Worksheet对象的Visible属性来隐藏工作表;Visible属性的值为以下三个值中的一个:
True 工作表为显示状态。
False 工作表为隐藏状态。
XlVerHidden 工作表为隐藏状态,且用户不能通过“取消隐藏”对话框将其改为显示状态。当Visible的值为XlVerHidden时,只能利用VBA将其重新设置为True。
Sub 隐藏工作表()
Worksheets("基础数据表").Visible=False
End sub

        38.“语音字段”功能

  在日常的工作表中,常会遇到一些生僻的字(如“邗”),影响了对表中内容的理解。Excel97为我们很好地解决了该问题,它增加了“语音字段”这一功能,你可以为这些生僻的字加上拼音注释。

  1 插入语音字段 你可以选择“插入”中“语音字段”命令来为“邗”字加语音字段,具体操作为:(1)选中“邗”字所在的单元格,双击该单元格,进入编辑状态;(2)将光标定位在“邗”字之前,选择“插入”中“语音字段”命令,“邗”字变为绿色,在该字上方出现一个小框,在框中输入字的拼音:han2,其中2代表阳平;(3)按两次回车键,以确认拼音的输入。

  2 显示/隐藏语音字段 添加拼音后,拼音并不显示。采用以下方法可显示拼音:(1)选择欲显示拼音的单元格;(2)选择“格式”菜单中的“语音信息”,按下“显示语音字段”,左侧的图标处于凹下状态即可。重复以上步骤就可隐藏语音字段。

  3 编辑语音字段 你可以按插入语音字段的操作方式进入编辑。选择欲更改拼音的单元格,再按下“插入”菜单的“语音字段”,然后更改拼音,按两次回车键确认更改。若语音字段所在单元格正处于编辑状态,你可以用Alt+Shift+上箭头或下箭头组合键在拼音和单元格中移动光标。

  4 改变语音信息的字体 (1)选择欲更改语音字体的单元格;(2)选择“格式\语音信息\定义”命令;(3)在字体列表框中选择要更改的字体,在“大小”的列表框中选择字体大小。另外,你还可以按下“字体设置…”按钮来改变拼音样式、颜色及添加字符的特殊效果等。

       39.克隆Excel表格数据

  1 克隆Excel表格

  在实际工作中应用的表格数据具有不同的特点,比如:一个表格的某一列数据与另一表格的数据相同;一个表格的某一行(列)数据相同;一个表格的某一行(列)数据呈等差(1、3、5、7、9)等特点;这数据的输入当然可以直接输入,但如果使用克隆功能可以大大提高数据输入效率和数据的准确性。

     2 克隆Excel表格数据的方式

  数据的克隆可以在表格单元纵横两个方向上进行,在横的方向上,可以向右克隆,即用最左边的单元内容向右复制;也可以向左克隆,即用最右的单元内容向左复制。在纵的方向上,可以向下克隆,即用最上面的单元内容向下复制;可以向上克隆,即用最下面的单元内容向上复制。

  其克隆方式有四种:

  1、相同数据的克隆
  2、有特点数据的克隆
  3、自定义序列的克隆
  4、工作表间的克隆

 3 “克隆”Excel表格数据的操作过程

  1、相同数据的克隆

  首先确定克隆数据的范围;其次打开顶行菜单的编辑项,点击“填充”→选择克隆的方向。

  2、序列数据的克隆

  在同列不同行输入连续的数据或等比、等差数据。首先确定克隆的范围输入第一数据,其次打开顶行菜单编辑项→填充→序列;在图2中选择适合目标的选项。

  3、自定义序列的克隆

  Excel已定义了部分序列,但是实际工作中需要序列可能不存在,比如上级单位下属单位名称,这时需要自定义序列。

  自定义序列的操作步骤:首先打开顶行菜单工具项,选项→自定义序列→在右边的文本框中输入定义的序列。

  4、工作表间的克隆

  如果把当前工作表的内容复制到其他工作表中,操作步骤如下:首先确定同组工作表,按住“Ctrl”键同时点击其他工作表,这样就建立了同组坐标;其次打开顶行菜单编辑项,填充→至同组工作表→有全部、内容、格式三个选项,可任意选取。

       40.Excel 中的批处理

  对于在办公室工作的职员来讲,日常工作多是搜集、整理、计算数据,并将其结果直观图形化并附以文字说明,Excel可以称得上是帮助我们处理这方面事务的“专家里手”。笔者在工作实践中总结出多项Excel的“批处理”功能,简单实用,可以成倍提高工作效率。

  1、工作簿的“批处理”

  (1)打开多个工作簿:在“文件”菜单中选择“打开文件……”,按住“Shift"键或“Ctrl" 键并配以鼠标操作,在弹出的对话框文件列表中选择彼此相邻或不相邻的多个工作簿,然后按“确定”按钮,就可以一次打开多个工作簿。

  (2)关闭所有打开工作簿而不退出Excel:按下“Shift"键并在“文件”菜单中选择“关闭所有文件”,如无修改则工作簿被立即关闭;如果有未保存的修改,系统询问是否要保存 修改。

  2、工作表的“批处理”

  按住“Shift"键或“Ctrl"键并配以鼠标操作,在工作簿底部选择多个彼此相邻或不相邻的工作表标签,然后就可以对其实行多方面的批量处理,笔者仅举几例进行说明。

  (1)在选中的工作表标签上按右键弹出快捷菜单,进行插入和删除多个工作表的操作。

  (2)在“文件”菜单中选择“页面设置……”,将选中的多个工作表设成相同的页面模式。

  (3)通过“编辑”菜单中的有关选项,在多个工作表范围内进行查找、替换、定位操作。

  (4)通过“格式”菜单中的有关选项,将选中的多个工作表的行、列、单元格设成相同的样式以及进行一次性全部隐藏操作。

  (5)在“工具”菜单中选择“选项……”,在弹出的菜单中选择“视窗”和“编辑”按钮,将选中的工作表设成相同的视窗样式和单元格编辑属性。

  (6)选中上述工作表集合中任何一个工作表,并在其上完成我们所需要的表格,则其它工作表在相同的位置也同时生成了格式完全相同的表格。

  3、单元格的“批处理”

  (1)"批量”调整列宽或行高。

  对于相邻的多列,在其列标号处用鼠标选中整列,并将鼠标移至选中区域内,单击右键弹出快捷菜单,进行多列的插入与删除操作;将鼠标移至选中区域内任何一列的列标号
处,当鼠标变成十字形时,按下左键并拖动,则将选中所有列的宽度调成相同的尺寸。此时双击右键,则将选中的所有列的宽度调成最合适的尺寸,以和每列中输入最多内容的单元格相匹配。行的操作与上述列的操作基本相同。对于不相邻的多列,先按下“Ctrl"键并配合鼠标左键单点或按下左键并拖动的操作,选中整列,并将鼠标移至选中的区域内任何一列的列标号处,当鼠标变成十字形时,按下左键并拖动,则将选中所有列的宽度调成相同尺寸,而此时双击右键,则将选中的所有列的宽度调成最合适的尺寸。行的操作与上述列的操作基本相同。

  (2)"批量”设定格式

  通过按下“Ctrl"键并配合鼠标左键单击或按下左键并拖动的操作选择不连续单元格,或者通过按下鼠标左键并拖动选择连续单元格,将鼠标移至选中的任何区域内,单击左键弹出快捷菜单,选择其中的“单元格格式……”一项进行“批量”设定单元格格式,或者利用“格式”工具条上的图标进行格式设定。

  (3)"批量”输入

  众所周知,在相邻单元格中输入相同的内容可以通过复制来实现。对于不相邻单元格中输入相同的内容除通过复制粘贴来实现外,还可以采取如下快捷方法实现:先按下“Ctrl"键并配合鼠标左键单点或按下左键并拖动的操作,选中所有要输入相同内容的单元格式,然后键入要输入内容,按下“Ctrl"键之后按“Enter"键,即可完成操作。

  (4)"批量”求和

  在Excel上工作时,对数字求和是经常遇到的操作,除传统的输入求和公式并复制外, 对于连续区域求和可以采取如下方法:假定求和的连续区域为m×n的矩阵型,并且此区域的右边一列和下面一行为空白,用鼠标将此区域选中并包含其右边一列或下面一行,也可以同时两者均选中,单击“常用”工具条上的“Σ”图标,则在选中区域的右边一列或下面一行自动生成了求和公式,并且系统能自动识别选中区域中的非数值型单元格,求和公式不会产生错误。

  根据以上介绍,相信大家还能总结出许多对工作簿、工作表、单元格进行“批处理”的方法,来提高我们的工作效率。

       41. Excel 的样式功能

  众所周知,Word具有定义样式的功能,我们可利用它快速的为文本定义字体、字号、字间距、颜色、文字对齐方式等格式内容,深受广大用户的欢迎。其实Excel与Word一样也提供有样式功能,我们同样可利用它快速对某个工作簿的数字格式、对齐方式、字体字号、颜色、边框、图案、保护等内容进行设置。
(一)、利用样式功能快速定义工作簿格式

1. 选定需要定义格式的工作簿范围。

2. 执行“格式”菜单的“样式”命令,打开“样式”对话框。

3. 从“样式名”列表框中选择合适的“样式”种类。

4. 从“样式包括”列表框中选择是否使用该种样式的数字、字体、对齐、边框、图案、保护等格式内容。

5. 单击“确定”按钮,关闭“样式”对话框,Excel工作簿的格式就会按照用户指定的样式发生变化,从而满足了用户快速、大批定义格式的要求。
      (二)、增加新的样式或修改已有样式的内容

1. 执行“格式”菜单的“样式”命令,打开“样式”对话框。

2. 在“样式名”列表框输入新建样式的名称(用户若拟对老样式进行修改则应从“样式名”列表框中选择需要修改的样式)。

3. 单击“更改”按钮,打开所示的“单元格格式”对话框。

4. 利用“单元格格式”对话框中的数字、对齐、字体、边框、图案、保护等选项卡对该种样式的各项具体格式进行适当调整。

5. 连续单击两次“确定”按钮,关闭所有对话框。

这样我们就完成了新增(或修改)指定样式具体内容的步骤,此后我们就可以利用这些新增或修改了的样式快速对Excel工作簿的格式进行修改了。
     (三)、从其他工作簿中复制样式

  除可对已有的样式进行修改及自定义所需的样式之外,Excel还允许我们将某个工作簿所包含的样式拷贝到其它工作簿中使用,以进一步扩大样式的使用范围,具体步骤为:

1. 打开包含有需要复制样式的源工作簿及目标工作簿。

2. 执行“格式”菜单的“样式”命令,打开“样式”对话框。

3. 单击“合并”按钮,打开如图3所示的“合并样式”对话框。

4. 在“合并样式来源”框中选择包含有要复制样式的源工作簿并单击“确定”按钮,源工作簿中所包含的一切样式就会拷贝到目标工作簿中(对于同名的样式,系统将会要求用户选择是否覆盖),然后我们就可以在目标工作簿中直接加以使用了,从而免去了重复定义之苦。

  从上面的介绍中可以看出,利用Excel的样式功能快速定义工作簿的格式是非常方便的,广大用户应充分加以利用。

     42.Excel 单元格填充

      1)填充相同数据

  可以在多个相邻或不相邻的单元格中快速填充同一个数据,操作方法是:

  1.同时选中需要填充数据的单元格,若某些单元格不相邻,可在按住Ctrl键的同时,点击鼠标左键,逐个选中。

  2.输入要填充的某个数据,按住Ctrl键的同时,按回车键,刚才选中的所有单元格同时填入该数据。

     (2)一次填充多张工作表

  如果想一次填充多张相同的工作表,省略以后的复制、粘贴操作,可采用以下方法:

  1.选中需要填充相同数据的工作表。方法是:若要选中多张相邻的工作表,可先单击第一张工作表标签,按住Shift键后单击最后一张工作表标签;若要选中多张不相邻的工作表,可先单击第一张工作表标签,按住Ctrl键后单击要选中的其它工作表标签。

  2.在已选中的任意一张工作表内输入数据,则所有选定工作表的相应单元格会填入同一数据。

    (3)快速重复填充

  如果同一列的几个相邻单元格需要填充相同的文本或文本与数字混合的内容(第一个字必须为文本)。可以采用以下方法:

  1.在已填充单元格的下一单元格继续输入,只要你输入的头一两个字符与其上方单元格中的相同,Excel 97就会自动显示其余的部分。

  2.回车表示接受。否则,可继续输入其它内容,修改Excel 97自动完成的部分。若没有这一功能,可将“工具→选项”对话框下“编辑”选项卡中的“记忆式键入”项选中。

 (4)选择填充

  如果同一列的若干单元格需要填充前面紧邻区域已输入过的内容(文本或文本与数字混合,纯数字不行)。可以采用以下方法:

  1.让光标停留在需要填充的单元格。按Alt+↓键打开本列已填充内容列表(见图1)。或者用鼠标右键单击需要填充的单元格,选择快捷选单中的“选择列表”命令,打开图1列表。

  2.用鼠标单击内容列表中需要填充的内容,它就被填入内容列表上方的单元格。

  如果要在某一区域内使用公式进行计算,可在输入公式后,按住Ctrl键并回车,实现对该区域快速填充公式。

  (5)行或列内的复制填充

  如果要在同一行或列内复制数据,可按以下方法进行操作:

  1.选中包含被复制原始数据的单元格区域。

  2.将光标移至已选中区域右下角的填充柄,当光标变为小黑十字时,按下左键沿行或列拖动。拖过所有需要填充的单元格后松开鼠标。

  3.若被复制数据是数字或日期,可能会以序列方式填充而不是复制。所以,最好按下Ctrl键再进行拖动。

  注意:被填充区域内的原有数据或公式均被覆盖。

  (6)快速重复填充

  如果要填充的数据与活动单元格上方或右侧的数据相同,可用以下方法快速重复填充:

  1.按Ctrl+D键,可将活动单元格上方的数据填充进来。

  2.按Ctrl+R键,可将活动单元格左侧的数据填充进来。

  (7)双击序列填充

   适用于填充列左侧有完整数据列的情况,可用于排名次。填充方法是:

  1.若要输入数字序列,可在填充列中输入两三个数字,全部选中后双击填充柄。则产生的序列会自动向下填充,直到左侧数据列的空白单元格处为止。

  2.若要输入含数字的文本序列(如“第1名”、“1个”之类),可在填充列的起始单元格中输入序列初始值(如“第1名”、“1个”),将其选中后双击填充柄(见图2)。则产生的序列会自动向下填充,也是到左侧数据列的空白单元格处结束。

  (8)快速移动填充

  使用此法可将一块数据区域移动到工作表中的任意位置,操作方法是:

  1.选中需要移动的数据区域。

  2.按下Shift键,再将鼠标移到数据区域的边界。按住鼠标左键拖动数据区域向目标位置移动,其间Excel 97会提示数据将被填充的区域,到达指定位置松开鼠标即可。同理,按下Ctrl键,可将一块数据区域复制到工作表中的任意位置。

         43.Excel 97制作名片

 

 

  采用Excel 97中的艺术文字可以自己动手制作出各种精美的名片,相信你在读完此文后,制作 名片一定无须求人了。

  1 建立Excel 97新文档,重新命名工作表

  (1)首先复制一张工作表。按下“Ctrl”键的同时拖动工作表“Sheet 1”至“Sheet 1”与“Sheet 2”之间即可复制出一张名为“Sheet 1(2)”的工作表。

  (2)右击工作表表名“Sheet 1”处,选择快捷菜单中的“重命名”命令,将“Sheet1”重新命名为“名片排版”,同法将“Sheet1(2)”“Sheet2”和“Sheet3”分别重新命名为“名片横排”,“名片竖排”和“名片背面”。

  2 设置页面尺寸

  (1)选择“名片横排”工作表,单击“文件”菜单中的“页面设置”命令,在“页面设置”对话框中点击“页面”选项卡,设置纸张大小为A4,同时选中“纵向”复选框。

  (2)在“页面设置”对话框中点击“页边距”标签,设置左右页边距为0.5,上下页边距为0.5。同时选中“水平居中”、“垂直居中”复选框。同样对“名片竖排”、“名片背面”工作表作上述页面设置。设置“名片竖排”工作表时将“纵向”复选框改选为“横向”复选框。

  3 设置名片尺寸 一般名片的尺寸为 90mm×55mm大小 A4的纸张尺寸为210mm×297mm,因此一张A4尺寸的纸张最多可设计10张名片。

  (1)选中“名片排版”工作表,拖动A列右边界设置A列宽为43,选定12行然后拖动12行其中一行行标题的下边界,设置12行行高154。同理将B3单元格设置成列宽为25、行高为265

  (2)同样原理将“名片横排”、“名片背面”工作表中A1B5单元格设置成列宽为44、行高为155;“名片竖排”工作表中A1E2单元格设置成列宽26、行高为270

  4 键入名片内容

  (1)进入“名片排版”工作表,单击工具栏上的“绘图”按钮。

  (2)单击“绘图”工具栏上的“插入艺术字”按钮。在“艺术字库”对话框中双击所需的特殊效果。

  (3)在“编辑‘艺术字’文字”对话框中键入“单位名称”等相应文字,选择相应的“字体”、“字号”等所需选项,然后单击“确认”按钮。

  (4)将键入内容拖放至A1单元格相应位置。重复上述“插入艺术字”过程,分别插入“姓名”、“部门”、“地址”、“电话”等名片所需相关内容,根据自己爱好对上述内容、大小及相对位置进行编辑调整。

  A2单元格为名片背面内容,根据需要可以以“插入艺术字”的方式插入相应的内容如名片英文内容、经营产品信息等。B3单元格为“竖排名片”中的内容,只要在“艺术字库”对话框中双击竖排效果的“艺术字”式样即可。

  5 粘贴链接名片内容,产生名片文档

  (1)选取工作表“名片排版”A1单元格,单击“常用”工具栏的“复制”按钮。

  (2)进入“名片横排”工作表,按下“Shift”键的同时单击“编辑”菜单,选取其下的“粘贴链接图片”选项,分别将工作表“名片排版”A1单元格中内容以图片形式粘贴链接至工作表“名片横排”A1B5单元格。

  (3)同样将工作表“名片排版”A2单元格中内容以图片形式粘贴链接至工作表“名片背面”A1B5单元格;将工作表“名片排版”B3单元格中内容以图片形式粘贴链接至工作表“名片竖排”A1E3单元格。

  6 以模板形式保存名片文档

  在“另存为”对话框中的“保存类型”区下选择“模板”,在“文件名”框中键入“名片”即可将名片文档以模板形式保存。

  7 使用“名片”模板打印制作名片

  在新建文档对话框的“常用”标签页内,单击“名片”模板后,再单击“确认”即可打开“名片”进行名片编辑。此方法与第4步类似,这时你可插入图片等。

  由于“名片横排”工作表中的内容与“名片排版”工作表A1单元格中的内容存在链接关系,因此A1单元格中内容的改变均将反应到“名片横排”工作表中。进入“名片横排”工作表,在打印机中放入名片纸,单击“文件”菜单选择“打印”命令对名片进行打印。至此一份与“名片排版”工作表A1单元格中内容相同的10张名片就会呈现在你的眼前。