《Excel中用VBA-Worksheet基本操作应用示例.docx》由会员分享,可在线阅读,更多相关《Excel中用VBA-Worksheet基本操作应用示例.docx(42页珍藏版)》请在金锄头文库上搜索。
1、Application象与其常用方法根本操作应用示例Application对象代表整个Microsoft Excel应用程序,带有175个属性和52 个方法,可以设置整个应用程序的环境或配置应用程序。示例01-01:体验开/关屏幕更新(ScreenUpdating属性)Sub关闭屏幕更新()MsgBox 顺序切换工作表Sheet1TSheet2TSheet3 Sheet2,先开启屏幕更 新,然后关闭屏幕更新”Worksheets(1).SelectMsgBox ”目前屏幕中显示工作表Sheet1”Application.ScreenUpdating = TrueWorksheets(2).Se
2、lectMsgBox 显示 Sheet2 了吗?Worksheets(3).SelectMsgBox 显示 Sheet3 了吗?Worksheets(2).SelectMsgBox ”下面与前面执行的程序代码一样,但关闭屏幕更新功能”Worksheets(1).SelectMsgBox ”目前屏幕中显示工作表Sheet1 & Chr(10) & ”关屏屏幕更新功能” Application.ScreenUpdating = False Worksheets(2).SelectMsgBox 显示 Sheet2 了吗?Worksheets(3).SelectMsgBox 显示 Sheet3 了吗?
3、Worksheets(2).SelectApplication.ScreenUpdating = TrueEnd Sub示例说明:ScreenUpdating属性用来控制屏幕更新。当运行一个宏程序处理涉 与到多个工作表或单元格中的大量数据时,假设没有关闭屏幕更新,那么会占用 CPU的处理时间,从而降低程序的运行速度,而关闭该属性那么可显著提高程序 运行速度。示例01-02:使用状态栏(StatusBar属性)Sub testStatusBar()Application.DisplayStatusBar = True 开启状态栏显示赋值状态栏显示的文本Application.StatusBar
4、= End Sub示例说明:StatusBar属性用来指定显示在状态栏上的信息。假设不想再显示状 态栏文本,可使用Application.StatusBar = False语句关闭状态栏显示,也可 以在程序开始将原先的状态栏设置存储,如使用语句oldStatusBar = Application.DisplayStatusBar将状态栏原来的信息存储在变量 oldStatusBar,在程序运行完成或退出时,将变量重新赋值给状态栏,如使用语 句 Application.DisplayStatusBar = oldStatusBar,以恢复状态栏原状。示例01-03:处理光标(Cursor属性)S
5、ub ViewCursors ()Application.Cursor = xlNorthwestArrowMsgBox 您将使用箭头光标,切换到Excel界面查看光标形状Application.Cursor = xlIBeamMsgBox 您将使用工形光标,切换到Excel界面查看光标形状Application. Cursor = xlWaitMsgBox 您将使用等待形光标,切换到Excel界面查看光标形状 Application.Cursor = xlDefaultMsgBox 您已将光标恢复为缺省状态End Sub 示例01-04:获取系统信息Sub GetSystemInfo()Ms
6、gBox Excel 版本信息为:& Application.CalculationVersionMsgBox Excel 当前允许使用的存为:& Application.MemoryFreeMsgBox Excel 当前已使用的存为:& Application.MemoryUsedMsgBox Excel 可以使用的存为:& Application.MemoryTotalMsgBox 本机操作系统的名称和版本为:& Application.OperatingSystemMsgBox 本产品所登记的组织名为:& Application.OrganizationNameMsgBox 当前用户名为
7、:& Application.UserNameMsgBox 当前使用的 Excel 版本为:& Application.VersionEnd Sub示例说明:可以使用给UserName属性赋值以设置用户名称。示例01-05:退出复制/剪切模式(CutCopyMode属性)Sub exitCutCopyMode()Application.CutCopyMode = FalseEnd Sub示例说明:退出复制/剪切模式后,在程序运行时所进展的复制或剪切操作不会 在原单元格区域留下流动的虚框线。需要提醒的是,在程序运行完后,应使用 Application.CutCopyMode = False语句恢
8、复该属性的默认设置。示例01-06:禁止弹出警告信息(DisplayAlerts属性)Sub testAlertsDisplay()Application.DisplayAlerts = FalseEnd Sub示例说明:在程序运行过程中,有时由于Excel本身设置的原因,会弹出对话框, 从而中断程序的运行,您可以在程序之前加上Application. DisplayAlerts = False语句以禁止弹出这些对话框而不影响程序正常运行。需要注意的是,在程 序运行完毕前,应使DisplayAlerts属性恢复为缺省状态,即使用语句 Application.DisplayAlerts = Tr
9、ue。该属性的默认设置为True,当将该属性 设置为False时,Excel会使直接使用对话框中默认的选择,从而不会因为弹出 对话框而影响程序运行。示例01-07:将Excel全屏幕显示Sub testFullScreen()MsgBox 运行后将Excel的显示模式设置为全屏幕Application.DisplayFullScreen = TrueMsgBox 恢复为原来的状态Application.DisplayFullScreen = FalseEnd Sub NextPage示例01-08: Excel启动的文件夹路径Sub ExcelStartfolder()MsgBox Excel
10、启动的文件夹路径为:& Chr(10) &Application.StartupPathEnd Sub 示例01-09:打开最近使用过的文档Sub OpenRecentFiles()MsgBox 显示最近使用过的第三个文件名,并打开该文件MsgBox 最近使用的第三个文件的名称为:&Application.RecentFiles(3).NameApplication.RecentFiles(3).OpenEnd Sub 示例01-10:打开文件(FindFile方法)Sub FindFileOpen()On Error Resume NextMsgBox 请打开文件,vbOKOnly + vb
11、Information,打开文件If Not Application.FindFile ThenMsgBox 文件未找到,vbOKOnly + vbInformation,打开失败End IfEnd Sub示例说明:本示例将显示“打开 文件对话框,假设用户未打开文件(即点击 “取消 按钮),那么会显示“打开失败 信息框。示例中使用了 FindFile方法, 用 来显示“打开 对话框并让用户打开一个文件。如果成功打开一个新文件, 那么该值为True。如果用户取消了操作并退出该对话框,那么该值为False。示例01-11:文件对话框操作(FileDialog属性)Sub UseFileDialog
12、Open()Dim lngCount As Long开启打开文件对话框With Application.FileDialog(msoFileDialogOpen).AllowMultiSelect = True.Show,显示所选的每个文件的路径For IngCount = 1 To .SelectedItems.CountMsgBox .SelectedItems(lngCount)Next lngCountEnd WithEnd Sub示例说明:本示例显示“打开文件对话框,当用户在其中选择一个或多个文 件后,将依次显示每个文件的路径。其中,FileDialog属性返回打开和保存对话 框中一
13、系列对象的集合,您可以对该集合对象的属性进展进一步的设置,如上例 中的AllowMultiSelect属性设置为True将允许用户选择多个 文件。示例01-12:保存Excel的工作环境Sub保存Excel的工作环境()MsgBox 将Excel的工作环境保存到D:ExcelSample中Application.SaveWorkspace D:ExcelSampleSampleEnd Sub示例说明:运行本程序后,将工作簿以带后缀名.xlw保存到D盘的ExcelSample 文件夹中,生成的文件全名为Sample.xlw。当改变工作簿并保存时,Excel会询 问是覆盖原文件还是保存副本。示例0
14、1-13:改变Excel工作簿名字(Caption属性)Sub SetCaption ()Application.Caption = My ExcelBookEnd Sub示例说明:运行本程序后,将工作簿左上角Excel图标右侧的“MicrosoftExcel 改为 “My ExcelBook 。示例01-14:使用InputBox方法Sub SampleInputBox()Dim vInputvInput = InputBox(请输入用户名:,获取用户名,Application.UserName)MsgBox 您好! & vInput & .很高兴能认识您.,vbOKOnly,打招呼End
15、Sub NextPage示例 01-15:设置页边距(CentimetersToPoints 方法) Sub SetLeftMargin()MsgBox 将工作表Sheet1的左页边距设为5厘米Worksheets(Sheet1).PageSetup.LeftMargin =Application.CentimetersToPoints(5)End Sub示例 01-16:使用 Windows 的计算器(ActivateMicrosoftApp 方法)Sub CallCalculate()Application.ActivateMicrosoftApp Index:=0End Sub示例说明:运行本程序后,将调用Windows的计算器。示例01-17:在程序中运行另一个宏(Run方法)Sub runOtherMacro()MsgBox 本程序先选择A1至C6单元格区域后执行DrawLine宏ActiveSheet.Range(A2:C6).SelectApplication