登陆注册
49356600000040

第40章 安全设置及VBA 应用(3)

(1)数学函数,如Abs(number)、Cos(number)、Exp(number)等;

(2)数组函数,如Array(arglist)、LBound(arrayname[,dimension])等;

(3)字符串操作函数,如Right(string,length)、LTrim(string)、Join(sourcearray[,delimiter])等;

(4)日期和时间函数,如DATE、NOW、DateAdd(interval,number,date)等;

(5)数据类型检查与转换函数,如IsNumeric(expression)、IsArray(varname)、IsEmpty(expression)等;

(6)文件操作函数,如CurDir [(drive )]、GetAttr(pathname )、FileDateTime(pathname)、FileLen(pathname)等;

(7)输入输出函数,如MsgBox(prompt[,buttons][,title][,helpfile,context])、Input(number,[ # ]filenumber)等;

(8)财会类函数,如DDB(cost,salvage,life,period[,factor])、NPV(rate,values())、IRR(values()[,guess])等;

(9)格式化数据,如FormatDateTime(Date[,NamedFormat])、Format(expression[,format[,firstdayofweek[,firstweekofyear]]])等;

(10)系统与对象函数,如CreateObject(class,[servername])、DoEvents()、GetAllSettings(appname,section)等。

9.2.3宏的简单应用

下面分别以在Word和Excel中举例介绍如何使用宏录制器创建简单宏应用,并在VBE(Visual Basic编辑器)中查看修改宏代码,以适应新的需要。

(1)Word文本格式设置宏。

步骤1:单击“工具”→“宏”→“录制新宏”菜单项,打开“录制新宏”对话框。

步骤2:在“录制新宏”对话框的“宏名”文本框中可输入录制新宏的名称。

步骤3:接下来可以将宏指定到工具栏或者指定为快捷方式。这里选择将宏指定到“工具栏”,单击“工具栏”按钮,“自定义”对话框。

在“自定义”对话框的“命令”选项卡中,将右边列表框中的“Project.NewMacros.Macro1”命令拖动到工具栏中,此时工具栏中出现了“Project.NewMacros.Macro1”按钮。

但是该按钮是文字画面,没有显示按钮形状,右键单击该按钮,弹出菜单,用户可以选择按钮图像及显示方式。

步骤4:在“将宏保存在”下拉列表框中选择“网格.doc”选项。若选择“所有文档(Normal.dot)”选项,则在任何打开的Word文档中都可以使用该宏。

步骤5:默认情况下,Word将自动添加有关宏的说明。若要进行修改,可以在“说明”文本框中输入说明。

步骤6:单击“格式”→“段落”,系统将弹出“段落”对话框,将各段落参数值设置。

步骤7:然后单击“停止”工具栏中的“停止录制”按钮,完成录制操作。

步骤8:打开示例文档,选择要设置格式的段落,然后单击“工具”→“宏”→“宏”菜单项,或按+打开。

步骤9:选择Macro1,再单击运行,便执行文本格式设置宏,运行效果。

步骤10:打开VBE,可看到该宏的源代码。

(2)制作语音朗读的宏。

Word中没有语音朗读功能,但是Excel中具有这个功能,如何使Word也具有朗读功能呢?在Microsoft Office中,各个组件间可以相互调用,通过调用Excel对象使Word也具有朗读功能。下面通过制作一个宏来完成调用,具体操作步骤如下。

步骤1:单击“工具”→“宏”→“Visual Basic编辑器”菜单项,打开Visual Basic编辑器。

步骤2:在Visual Basic 编辑器中创建一个SpeakText 的过程,具体代码如下。

Sub SpeakText()

Dim spoAsObject

Set spo=CreateObject("Excel.Application")

spo.Speech.Speak Selection.Text

Set spo=Nothing

End Sub

选择相应的文本,然后打开宏对话框,选择SpeakText宏,单击“运行”,Word便会自动朗读选择的文本。

程序说明:

(1)CreateObject 函数创建一个Excel.Application 对象,并赋值给spo 该对象的引用。

(2)接着调用Speech 子对象的Speak 方法来朗读选取的文本。

(3)最后设置spo 为空引用,释放资源。

(3)Excel简单宏应用。

Excel中宏录制的方法与Word中类似,不同的是Excel中将宏保存在工作表或工作簿。还有一点不同的是,Excel不能将宏添加到工具栏中,只能为宏指定某个快捷键。下面制作一个宏,用以将低于60分的成绩突出显示,字体加粗,大小由12磅改为18磅,宏制作的具体操作步骤如下。

步骤1:单击“工具”→“宏”→“录制新宏”菜单项,打开“录制新宏”对话框。

步骤2:选中成绩低于60的单元格,设置字体大小为18磅,加粗,完成后单击“停止”工具栏中的“停止录制”按钮,完成宏录制操作。

此时可以通过宏操作来突出不及格成绩的显示,但是只能对一个单元格进行操作,如何通过宏来突出显示工作表中的所有不及格成绩呢?下面将通过修改宏代码来适应新的应用,具体操作步骤如下。

步骤1:单击“工具”→“宏”→“Visual Basic编辑器”,打开Visual Basic编辑器。

步骤2:修改代码如下:

Sub SetStyle()

Dim scoreAs Integer,intRow As Integer,iAs Integer

intRow=Sheets("Sheet1").UsedRange.Rows.Count-1

For i=0To intRow-1

W ith Sheets("Sheet1")

If.Cells(i +2,3).Value<60Then

W ith Cells(i +2,3).Font

.Name="宋体"

.Size=18

.Bold=True

.Strikethrough=False

.Super=False

.Sub=False

.OutlineFont=False

.Shadow=False

.Underline=xlUnderlineStyleNone

.ColorIndex=xlAutomatic

EndW ith

End If

EndW ith

Next i

End Sub

程序说明:

(1)intRow 用来获取工作表中已有数据的行数。

(2)接下来使用一个循环语句,将成绩低于60的字体设置为18磅、粗体。

步骤3:单击Visual Basic编辑器工具栏中的保存按钮,关闭编辑器,然后在Excel中单击“工具”→“宏”→“宏”菜单项,弹出“宏”对话框。

步骤4:选中SetStyle后,单击“执行”按钮,便运行修改后的宏。

9.2.4宏安全性及宏病毒

1.宏安全性

VBA宏中可能包含一些潜在的病毒,也就是“宏病毒”,为了保证VBA 的安全,就要设置其安全性。在Office中要与他人共享宏,则可以通过数字签名来验证,以保证VBA 宏的可靠来源。

在打开包含VBA宏的文档时,都可以先验证VBA 宏的来源再启用宏。

下面介绍设置VBA安全性的具体操作步骤。

(1)单击“工具”→“宏”→“安全性”菜单项,打开“安全性”对话框。

在“安全级”选项卡中有4个单选按钮。

非常高。选中该选项,则只允许运行在可信位置安装的宏,其他所有签名和未签名的宏都将被禁用。通过将“安全级”设置为“非常高”并禁用在可信位置安装的宏,可完全禁用所有的宏。如何禁用在可信位置安装的宏?在“安全性”对话框的“可靠发行商”选项卡中取消选中“信任所有安装的加载项和模板”复选框。

高。选中该选项,则只运行经过数字签名而且用户确认来源可靠的宏。在信任一个源之前,应该确认源是可靠的,并在给该宏签名前要使用病毒扫描软件来扫描病毒。没有签名的宏自动被禁用。

中。选中该选项,则每当遇到来自不在可靠来源列表中的宏时,将会弹出“安全警告”对话框,显示一条警告信息。用户可以选择在打开文件时是否启用还是禁用宏,如果文件中可能包含病毒,应该选择禁用宏。

低。若肯定打开的文件和加载项都没有病毒,则可选中该选项。选中该选项,将关闭宏病毒。

(2)默认情况下,“安全级”设置为“高”。这里将其设置为“中”,然后单击“确定”即可。

(3)当再次打开文档时,将启用“安全级”的设置。

Microsoft Office软件的安全性在默认情况下设置为“高”。未经签名的VBA 宏不能在此环境中运行。需要先将宏的安全级别更改为“中”以运行此代码。单击“工具”→“宏”→“安全性”菜单项,在“安全级”选项卡中,选择“中”,再单击“确定”完成,然后重新启动程序才能使安全级别更改生效。

2.宏病毒

(1)宏病毒定义。

宏病毒就是利用VBA进行编写的一些宏,这些宏可以自动运行,干扰用户工作,轻则降低工作效率,重则破坏文件,使用户遭受巨大损失。

(2)宏病毒特点。

传播快。宏病毒成为传播最快的病毒,其原因有三个:第一,现在用户几乎对可执行文件病毒和引导区病毒已经有了比较一致的认识,对这些病毒的防治都有一定的经验,许多公司、企业对可执行文件和磁盘的交换都有严格的规定。但对宏病毒的危害还没有足够的认识,而现在主要的工作就是交换数字文件,因此使宏病毒得到迅速传播。第二,现在的查病毒、防病毒软件主要是针对可执行文件和磁盘引导区设计的,一般都假定数据文件中不会存在病毒,而人们相信查病毒软件的结论,从而使隐藏在数据文件中的病毒成为漏网之鱼。第三,Internet普及以及各种网络通信软件的大量应用使病毒的传播速度大大加快。

制作和变种方便。目前宏病毒原型已有很多,并在不断增加中。只要修改宏病毒中病毒激活条件和破解条件,就可以制造出一种新的宏病毒,甚至比原病毒的危害更加严重。

破坏性大。鉴于宏病毒用VBA 语言编写,VBA 语言提供了许多系统及底层调用,如直接使用DOS命令,调用Windows API,调用DDE和DDL等。这些操作均可能对系统构成直接威胁,而Office中的Word、Excel等软件在指令的安全性和完整性上的检测能力很弱,破坏系统的指令很容易被执行。

兼容性差。宏病毒在不同版本的Office中的Word、Excel中不能运行。

(3)宏病毒的预防。

当打开一个含有可能携带病毒的宏的文档时,系统将自动显示宏警告信息。这样就可选择打开文档时是否要包含宏,如果希望文档包含要用到的宏,打开文档时就包含宏。

如果您并不希望在文档中包含宏,或者不了解文档的确切来源。例如,文档是作为电子邮件的附件收到的,或是来自网络。在这种情况下,为了防止可能发生的病毒传染,打开文档过程中出现宏警告提示框时最好单击“取消宏”按钮,以取消该文档允许宏。

9.3习题

1.简述文档权限设置的操作步骤。

2.Word文档保护的编辑限制有几种?

3.Word及Excel中的文档保护功能分别有哪些?

4.PowerPoint中是否有文档保护功能?如何保护PowerPoint 文档?

5.简述VBA宏及宏病毒的概念。

6.在Office中怎么禁用和启用宏?

7.修改SpeakText 过程,使其能够朗读整个Word文档。

8.编写一个ConvertText 过程,将首字母小写的英文单词转换为首字母大写。

同类推荐
  • 中国3D打印的未来

    中国3D打印的未来

    自2012年以来,有关3D打印的报道屡见报端,这一新型制造技术引起了全世界的广泛关注。《中国3D打印的未来》作者、中国3D打印技术产业联盟秘书长罗军认为,中国从20世纪90年代初开始涉足3D打印技术,并取得了巨大进展,但与国外同行相比仍存在一定差距。特别是中国3D打印企业普遍存在“小而散”、各自为政的现象,如何发挥整合优势、抱团发展是目前亟需解决的问题。如果能够加强同行合作,抱团发展,形成合力,相信3D打印会成为唯一一项中国有可能赶超世界先进水平的技术。
  • 领导干部信息化基础

    领导干部信息化基础

    本书共分6章,分别介绍了计算机网络综述;信息化的三个主要领域,即电子政务(政府信息化)、企业信息化和电子商务;PowerPoint2000中文演示文稿等内容。
  • 下一代互联网

    下一代互联网

    本书系统介绍了下一代互联网的进展情况,包括下一代互联网的概念解析,国内外下一代互联网的最新发展情况,下一代互联网的关键技术进展,以及各国发展下一代互联网的政策计划。最后分析了下一代互联网对未来社会的影响,提出我国发展下一代互联网的政策建议等。全书共6章,包括互联网发展历史和现状,下一代互联网基本概念,下一代互联网研究最新进展,下一代互联网发展现状,我国发展下一代互联网现状,发展下一代互联网战略建议。
  • 从平凡到神奇

    从平凡到神奇

    本书结合多年的开店经验,全面地讲解了在淘宝网开设店铺的相关知识,为准备在淘宝网创业的卖家及刚刚创建店铺的店主,提供全面的开店和经营方面的指导。本书按照淘宝开店的流程安排内容,侧重每个步骤中的实际技巧。本书分3个部分:如何在淘宝开店、如何开好店、如何做强做大店铺。前3章介绍了在淘宝网开设店铺的基础知识,指导读者在开设店铺前做好准备工作,以及建立起自己的店铺,并且完成店铺的第一笔交易;第4章至第7章主要介绍了网店装修和推广的方法,以及网店的物流经验和技巧;第8章着重介绍了将网店做大做强的方法,帮助卖家在开店和经营中树立品牌意识,做大做强自己的店铺。
  • Delphi程序设计教程

    Delphi程序设计教程

    本书为适应不同层次读者的需要,从Delphi的基本知识讲起,由浅入深,全面讲述了Delphi的集成开发环境、Delphi的编程语言——ObjectPascal、常用组件的使用、窗体的设计、菜单的设计、对话框的设计、多文档界面程序的设计、多媒体编程和数据库应用程序设计等内容。
热门推荐
  • 梁传

    梁传

    历史留给了我们什么?是名将“大丈夫当提三尺剑立不世之功”的气概?还是儒生“苟利国家生死以,岂因祸福避趋之”的豪迈?这是我的第一本小说,是故事,是情怀,更是我想与你一同思考的历史。
  • 天行

    天行

    号称“北辰骑神”的天才玩家以自创的“牧马冲锋流”战术击败了国服第一弓手北冥雪,被誉为天纵战榜第一骑士的他,却受到小人排挤,最终离开了效力已久的银狐俱乐部。是沉沦,还是再次崛起?恰逢其时,月恒集团第四款游戏“天行”正式上线,虚拟世界再起风云!
  • 倾城舞之风流少主

    倾城舞之风流少主

    新文:《逃婚小嫁娘》,希望大家支持笔名修改:青宸
  • 人生是一场盛大的相逢

    人生是一场盛大的相逢

    陈小雨,一个敏感缺爱却又无比希望拥有真正爱自己,关心自己的人。高中那年,她第一次遇见杜奇尹就有一种感觉“与这个人一定会有故事”。他们像很多人一样,谈恋爱,谈结婚,陈小雨的思维里认定了杜奇尹,但却总是走不出原生家庭带来的伤痛。杜奇尹深爱陈小雨,从少年到后来,但却总是因为对爱人的不够了解和不完全断奶,十几年里伤陈小雨于无形。可他,终究比任何人都爱她。他们相爱相虐,直到青春不复……
  • 甜甜的陈醋

    甜甜的陈醋

    重生×甜宠仗着他乖巧单纯又好骗,沈醋终于忍不住朝他伸出了魔爪。半夜三更顾岑被腰上乱动的手弄的睡意全无。他红着脸问:“醋醋你干嘛?”沈醋一本正经骗他道:“手冷,我暖暖。”
  • 浮云生世

    浮云生世

    随手写的,文笔不够请见谅,我会继续努力。
  • 潘杨之恋

    潘杨之恋

    现代的美女特工杨暖,穿越到西晋,与古今第一美男潘安展开的爱恋。在那个时代她是个冰雪聪明的美女,人见人爱,她不仅虏获了潘安的心,还拐了不少美男......被杀时,因为祖传玉佩沾到血迹,与杨蓉姬与杨暖互穿越。杨暖穿到古代变成杨蓉姬,运用现代的知识,成了古代商界的巨头。杨蓉姬穿越到现代变成杨暖,经抢救,脱离生命危险,一直昏迷不醒。一次离奇的穿越,成就了潘杨之好,完美的恋爱。又一次离奇的穿越,潘越成了现代人,历经磨难终的名人。
  • 圣世巫医

    圣世巫医

    她是巫氏宗门门主,擅毒蛊,精医术,让人仰望忌惮。一次意外,她不幸身亡,再次睁眼,却重生在了一位废物“世子”身上。面容腐烂,不能修炼,爹爹厌恶?死了还继续被人算计?哼!生来即是人中龙,岂容尔等太嚣张!本想走狂拽路线,就是伙伴太无良,不过一起虐渣虐得爽。只是……面前这个卖力讨好献殷勤求眼熟的男人是谁?男人:“你救了我,我要以身相……”阿十一面无表情地将一板砖拍在他脑袋上。不好意思,你刚刚说什么?我没听清。
  • 纠缠小甜心:恶魔校草别乱来

    纠缠小甜心:恶魔校草别乱来

    瞪着妈妈给进修考研的她的一纸婚约,在复旦大学图书馆上吊的心思都有了!“我成人未满不能结婚!”林蓓贝红眼。“辩驳无效!”老妈狠心瞪着她。“反正只同居1个月,1个月过后说双方无感,拒婚,不就行了?”夏墨航低身说到。“好主意!”林蓓贝眨了眨眼。…谁又能预测想到最后,我不想放开你的手,也不愿放开你的手。
  • 绝命本相

    绝命本相

    看不一样的玄幻小说!品不一样的人生哲理!我文笔不是那么的优秀,但是接下来的剧情,你猜出来算我输!