Excel word ppt office使用技巧大全(DOC格式)-第7部分
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
币 政 策 〃 MenuBars(〃MyMenu〃)。Menus(〃 金 融 〃)。MenuItems。Add Caption:=〃 条 例 〃;
OnAction:=〃条例〃 +以下为创建如图所示的多级选单 MenuBars(〃MyMenu〃)。Menus。Add
Caption:=〃经济〃 '建立选单项―经济‖ +以下三句为在―经济‖选单下增加―农业、工业和第三
产业‖三项选单项 MenuBars(〃MyMenu〃)。Menus(〃经济〃)。MenuItems。Add Caption:=〃农业〃;
OnAction:=〃农业〃 MenuBars(〃MyMenu〃)。Menus(〃经济〃)。MenuItems。Add Caption:=〃工业〃;
OnAction:=〃工业〃 MenuBars(〃MyMenu〃)。Menus(〃经济〃)。MenuItems。AddMenu Caption:=〃第三
产业〃 +以下三句为在―第三产业‖选单下增加―概况、范畴‖二项选单项和―饮食服务业‖子选单
MenuBars(〃MyMenu〃)。Menus(〃经济〃)。MenuItems(〃第三产业〃)。MenuItems。Add Caption:=〃概
况 〃; OnAction:=〃 概 况 〃 MenuBars(〃MyMenu〃)。Menus(〃 经 济 〃)。MenuItems(〃 第 三 产 业
〃)。MenuItems。Add Caption:=〃范畴〃; OnAction:=〃范畴〃 MenuBars(〃MyMenu〃)。Menus(〃经济
〃)。MenuItems(〃第三产业〃)。MenuItems。AddMenu Caption:=〃饮食服务业〃 +以下二句为在
―饮食服务业‖选单下增加― 酒店1、酒店2‖ 二项选单项 MenuBars(〃MyMenu〃)。Menus(〃经济
〃)。MenuItems(〃第三产业〃)。MenuItems(〃饮食服务业〃)。MenuItems。Add Caption:=〃酒店1〃;
OnAction:=〃 酒 店 1〃 MenuBars(〃MyMenu〃)。Menus(〃 经 济 〃)。MenuItems(〃 第 三 产 业
〃)。MenuItems(〃饮食服务 业 〃)。MenuItems。Add Caption:=〃 酒店 2〃; OnAction:=〃 酒店 2〃
MenuBars(〃MyMenu〃)。Activate +激活自定义选单 End Sub Sub auto_open() +系统自动打
开运行宏 OpenMyMenu +调用用户选单函数 End Sub Sub auto_close() +系统自动关闭运行
宏 On Error Resume Next +忽略错误 MenuBars(〃MyMenu〃)。Delete +删除自定义选单 End
Sub 读者可以在自己的工作簿选单―工具‖ 中的―宏‖下,创建以上三个函数并将以上函数语句拷
贝到其中即可运行。 66、。用VBA(编程)保护Excel文档 VBA (Visual Basic for Application)
是Excel应用程序中功能非常强大的编程语言,为了规范不同的用户对Excel应用程序的访问能
力,需要对Excel文档及有关的数据进行有效的保护, 这里根据自己及同行们的体会,从以下
二个方面介绍用VBA编程法实现对Excel文档的保护。 对工作簿的保护
XL
…………………………………………………………Page 41……………………………………………………………
Excel_word_ppt_使用技巧大全(完全版)
1。利用VBA中Workbook对象的SaveAs方法实现对工作簿的保护, 下面就对SaveAs有 关的参量
作一介绍: Filename:该字符串表示要保存的文件名。 可包含完整路径。 如果不指定路径,
Microsoft Excel 将文件保存到当前文件夹。 FileFormat : 可选,文件的保存格式。
Password :为一个区分大小写的字符串(不超过15个字符) ,用于指定文件的保护密码。
WriteResPassword: 该字符串表示文件的写保护密码。 如果文件保存时带有密码,但打开文
件时不输入密码,则该文件以只读模式打开。 ReadOnlyRemended :如果为True则在打开
文件时显示一条信息,提示该文件以只读模式打开。 下例就是在Excel应用程序中添加一工作
簿,将工作簿按常规文件格式存为―C:pjobj经济评价。xls‖文件,并给该文件指定保护密码
―12‖ 以及写保护密码―23‖ 。 Sub 保护工作簿 NewWorkbook = Workbooks。add
NewWorkbook。SaveAs FileName: =〃C: pjobj 经 济 评 价 。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带有以下参量:
XLI
…………………………………………………………Page 42……………………………………………………………
Excel_word_ppt_使用技巧大全(完全版)
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 67、求:将所选区域中的数值全部转化为
〃万元〃的最简代码。 求:将所选区域中的数值全部转化为〃万元〃的最简代码。 或能完成此功能
的最便捷的命令操作。 写了一个;抛砖引玉: Sub convt() Dim cel As Range Dim dec As Variant
Application。EnableEvents = False yesorno = MsgBox(〃确实将区域所有数值转换为―万元‖ ?
〃; vbYesNo + vbQuestion + vbDefaultButton1) If yesorno = vbYes Then 1: dec =
Application。InputBox(〃请输入小数位数:〃; Default:=0; Type:=1) If dec = 〃〃 Then GoTo
1 End If For Each cel In Selection If IsNumeric(cel。Value) Then 'cel = (Round(cel。Value
/ 10000; 2)) & 〃万元〃 cel = (Round(cel。Value / 10000; dec)) End If Next ElseIf yesorno
= vbNo Then Exit Sub End If End Sub 以 下 当 为 最 简 代 码 吧 。 Sub Macro2()
Selection。NumberFormatLocal = 〃#〃〃。〃〃#;〃
XLII
…………………………………………………………Page 43……………………………………………………………
Excel_word_ppt_使用技巧大全(完全版)
End Sub 68、在VBA开发环境中,点击工具――附加控件,出现如下窗口: 在可选控件中选择
microsoft orogressbar control;再点击确定,这时,你会发现在你的工具箱中增加了进度条
工具,如图: 下面说说进度条的用法: 属性:Max: 设置进度条控件的最大值 Min: 设置
进度条控件的最小值 Value:设置进度条控件对象的当前值 Scrolling: 进度条的式样,即一
格一格的进度条或是没有间隔的进度条。 例子:Private Sub UserForm_Activate() For i =
1 to 5000 ProgressBar1。Max = 5000 设置进度条控件的最大值 ProgressBar1。Value = I 进
度条控件对象的当前值 next End Sub 在程序中加入进度条的办法是将ProgressBar1。Max=最
大值,ProgressBar1。Value = 当前值放入循环中去。 69、Excel是一个优秀的电子表格软件,
如果你编的程序需要以报表的形式显示最终结果,它会是个不错的选择。你可以通过VB控制
Excel显示数据表格。如果你不愿意深入了解Excel这些琐碎的细节,也不是没有权宜之计:你
可以打开Excel中的工具→宏→录制新宏,然后进行手工操作,结束后把所录的宏代码贴进你
的VB程序就行。这样得到的程序一般都能正常运行,但其中的宏代码往往不够简洁,效率和可
读性都不高。 Excel编程碰到的第一个问题是表头。有时表头的形式比较复杂,需要横向或纵
向合并单元格。请放心,只要没有斜杠,Excel都能应付得了。 例如合并A2~A5这4个单元格,
你录制的宏代码会是这样: Range(〃A2:A5〃)。Select With Selection 。HorizontalAlignment
= xlCenter 。VerticalAlignment = xlBottom 。WrapText = False 。Orientation = 0 。AddIndent
= False 。ShrinkToFit = False 。MergeCells = False End With Selection。Merge 而自己编
程只要一句 Range。(―A2:A5‖)。mergecells=True 就可以解决问题。 表头形式定了,再就是表
头的内容。如果单元格中的文本长度超过了列宽,往往只能显示部分内容,行尾那一格的内容
则会―越境‖进入右边那个空白单元格,很不美观。这个问题可以通过在程序中设置列宽加以解
决。 Columns(14)。columnwidth=12 设置第14列列宽为12 (缺省列宽为8。38) 如果你不愿意
劳神去逐列估计实际所需的列宽,干脆来一行 Columns(―a:i‖)。autofit a到i列自动调整列
宽
XLIII
…………………………………………………………Page 44……………………………………………………………
Excel_word_ppt_使用技巧大全(完全版)
让Excel随机应变吧。 但也许你不喜欢这种方法,认为表头撑大了列宽,弄得浏览一张小表格
还得向右滚动,太不方便了。要是能保持默认列宽,让文本自动换行就好了。没问题,Excel
包你满意。 Rows(3)。WrapText=True 让第三行各单元格中的文本自动换行 不过你最好再加
一句 Rows(3) 。VerticalAlignment = xlTop 让表头自动向上对齐,这样比较符合习惯。 你
还可以给表头打上底色,让你的读者不至于看了打哈欠。 Rows(2)。 Interior 。ColorIndex =
5 设 置 第 2 行 底 色 为 蓝 色 再 给 表 格 的 标 题 上 色 , 这 样 更 醒 目 一 点 。
Rows(1)。Font。ColorIndex=4 表头完成后该填数据了,一个一个地填实在是太? ,如果你的数
据是存放在一个二维数组中,那问题就简单多了。 Dim Data(3;4) 〃〃〃〃 数据处理
Range(―a2:d4‖)。Value=Data 这样可以一次填入一个表的所有数据,够快了吧!不过提醒一句,
Range对象大小最好与数组匹配,小了无法显示所有数据,大了则会在空白单元格只填入―N/A‖
表示没有取得数据。 如果需要在结果中显示多个同样规格的数据表,想在Range对象中加入循
环变量,这也好办。 Dim cell11;cell2 Dim Data(3;4) 〃〃〃〃 For I =1 to 40 〃〃〃〃
数 据 处 理 Set cell1=Worksheets(〃Sheet1〃)。Cells(5*I…4;1) Set
cell2=Worksheets(〃Sheet1〃)。Cells(5*I…2;4)
Worksheets(〃Sheet1〃)。Range(cell1;cell2)。value=Data Next I 表格填完了,现在该打表格
线 了 , 以 下 几 条 语 句 可 以 满 足 你 的 要 求 : With
Worksheets(〃Sheet1〃)。Range(cell1;cell2)。borders 。LineStyle=xlContinuous 。weight=x
lThin End With 70、《计算机实用软件》2001…2002第一学期试卷(2) 一、填空题(每空1
分,共20分) 1。在Excel的系统默认状态下,某个工作表的标签呈白色显示,表示其为 。在
工作表中被粗线框住的的格子称为 。 2.在Excel工作表中可以输入两类数据它们是 和 3。 工
作表由 行和 列组成 4。输入Excel公式应以 或者 开头,然后再输入具体的计算公式 5。在
Excel中,系统默认状态下,输入文字的对齐方式是 ,输入数字的对齐方式是 6。在VB5的标准
控件中 控件