VBA常用代码(60页).docx
《VBA常用代码(60页).docx》由会员分享,可在线阅读,更多相关《VBA常用代码(60页).docx(60页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-VBA常用代码-第 60 页excel常用宏宏代码大全本示例为设置密码窗口 (1)If Application.InputBox(请输入密码:) = 1234 ThenA1 = 1 密码正确时执行Else: MsgBox 密码错误,即将退出! 此行与第2行共同设置密码End If本示例为设置密码窗口 (1)X = MsgBox(是否真的要结帐?, vbYesNo)If X = vbYes ThenClose本示例为设置工作表密码ActiveSheet.Protect Password:=641112 保护工作表并设置密码ActiveSheet.Unprotect Password:=6411
2、12 撤消工作表保护并取消密码本示例关闭除正在运行本示例的工作簿以外的其他所有工作簿,并保存其更改内容。For Each w In WorkbooksIf w.Name ThisWorkbook.Name Thenw.Close SaveChanges:=TrueEnd IfNext w每次打开工作簿时,本示例都最大化 Microsoft Excel 窗口。Application.WindowState = xlMaximized本示例显示活动工作表的名称。MsgBox The name of the active sheet is & ActiveSheet.Name本示例保存当前活动工作簿
3、的副本。ActiveWorkbook.SaveCopyAs C:TEMPXXXX.XLS下述过程激活工作簿中的第四张工作表。Sheets(4).Activate下述过程激活工作簿中的第1张工作表。Worksheets(1).Activate本示例通过将 Saved 属性设为 True 来关闭包含本段代码的工作簿,并放弃对该工作簿的任何更改。ThisWorkbook.Saved = TrueThisWorkbook.Close本示例对自动重新计算功能进行设置,使 Microsoft Excel 不对第一张工作表自动进行重新计算。Worksheets(1).EnableCalculation =
4、False下述过程打开 C 盘上名为 MyFolder 的文件夹中的 MyBook.xls 工作簿。Workbooks.Open (C:MyFolderMyBook.xls)本示例显示活动工作簿中工作表 sheet1 上单元格 A1 中的值。MsgBox Worksheets(Sheet1).Range(A1).Value本示例显示活动工作簿中每个工作表的名称For Each ws In WorksheetsMsgBox ws.NameNext ws本示例向活动工作簿添加新工作表 , 并设置该工作表的名称?Set NewSheet = Worksheets.AddNewSheet.Name =
5、 current Budget本示例将新建的工作表移到工作簿的末尾Private Sub Workbook_NewSheet(ByVal Sh As Object)Sh.Move After:=Sheets(Sheets.Count)End Sub本示例将新建工作表移到工作簿的末尾Private Sub App_WorkbookNewSheet(ByVal Wb As Workbook, _ByVal Sh As Object)Sh.Move After:=Wb.Sheets(Wb.Sheets.Count)End Sub本示例新建一张工作表,然后在第一列中列出活动工作簿中的所有工作表的名称。
6、Set NewSheet = Sheets.Add(Type:=xlWorksheet)For i = 1 To Sheets.CountNewSheet.Cells(i, 1).Value = Sheets(i).NameNext i本示例将第十行移到窗口的最上面?Worksheets(Sheet1).ActivateActiveWindow.ScrollRow = 10当计算工作簿中的任何工作表时,本示例对第一张工作表的 A1:A100 区域进行排序。Private Sub Workbook_SheetCalculate(ByVal Sh As Object)With Worksheets
7、(1).Range(a1:a100).Sort Key1:=.Range(a1)End WithEnd Sub本示例显示工作表 Sheet1 的打印预览。Worksheets(Sheet1).PrintPreview本示例保存当前活动工作簿?ActiveWorkbook.Save本示例保存所有打开的工作簿,然后关闭 Microsoft Excel。For Each w In Application.Workbooksw.SaveNext wApplication.Quit下例在活动工作簿的第一张工作表前面添加两张新的工作表?Worksheets.Add Count:=2, Before:=Sh
8、eets(1)本示例设置 15 秒后运行 my_Procedure 过程,从现在开始计时。Application.OnTime Now + TimeValue(00:00:15), my_Procedure本示例设置 my_Procedure 在下午 5 点开始运行。Application.OnTime TimeValue(17:00:00), my_Procedure本示例撤消前一个示例对 OnTime 的设置。Application.OnTime EarliestTime:=TimeValue(17:00:00), _Procedure:=my_Procedure, Schedule:=F
9、alse每当工作表重新计算时,本示例就调整 A 列到 F 列的宽度。Private Sub Worksheet_Calculate()Columns(A:F).AutoFitEnd Sub本示例使活动工作簿中的计算仅使用显示的数字精度。ActiveWorkbook.PrecisionAsDisplayed = True本示例将工作表 Sheet1 上的 A1:G37 区域剪下,并放入剪贴板。Worksheets(Sheet1).Range(A1:G37).CutCalculate 方法计算所有打开的工作簿、工作簿中的一张特定的工作表或者工作表中指定区域的单元格,如下表所示:要计算 依照本示例所
10、有打开的工作簿 Application.Calculate (或只是 Calculate)指定工作表 计算指定工作表Sheet1 Worksheets(Sheet1).Calculate指定区域 Worksheets(1).Rows(2).Calculate本示例对自动重新计算功能进行设置,使 Microsoft Excel 不对第一张工作表自动进行重新计算。Worksheets(1).EnableCalculation = False本示例计算 Sheet1 已用区域中 A 列、B 列和 C 列的公式。Worksheets(Sheet1).UsedRange.Columns(A:C).Cal
11、culate本示例更新当前活动工作簿中的所有链接?ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources本示例设置第一张工作表的滚动区域?Worksheets(1).ScrollArea = a1:f10本示例新建一个工作簿,提示用户输入文件名,然后保存该工作簿。Set NewBook = Workbooks.AddDofName = Application.GetSaveAsFilenameLoop Until fName FalseNewBook.SaveAs Filename:=fName本示例打开 Analysis.xls
12、工作簿,然后运行 Auto_Open 宏。Workbooks.Open ANALYSIS.XLSActiveWorkbook.RunAutoMacros xlAutoOpen本示例对活动工作簿运行 Auto_Close 宏,然后关闭该工作簿。With ActiveWorkbook.RunAutoMacros xlAutoClose.CloseEnd With在本示例中,Microsoft Excel 向用户显示活动工作簿的路径和文件名称。Sub UseCanonical()Display the full path to user.MsgBox ActiveWorkbook.FullNameU
13、RLEncodedEnd Sub本示例显示当前工作簿的路径及文件名(假定尚未保存此工作簿)。MsgBox ActiveWorkbook.FullName本示例关闭 Book1.xls,并放弃所有对此工作簿的更改。Workbooks(BOOK1.XLS).Close SaveChanges:=False本示例关闭所有打开的工作簿。如果某个打开的工作簿有改变,Microsoft Excel 将显示询问是否保存更改的对话框和相应提示。Workbooks.Close本示例在打印之前对当前活动工作簿的所有工作表重新计算?Private Sub Workbook_BeforePrint(Cancel As
14、 Boolean)For Each wk In Worksheetswk.CalculateNextEnd Sub本示例对查询表一中的第一列数据进行汇总,并在数据区域下方显示第一列数据的总和。Set c1 = Sheets(sheet1).QueryTables(1).ResultRange.Columns(1)c1.Name = Column1c1.End(xlDown).Offset(2, 0).Formula = =sum(Column1)本示例取消活动工作簿中的所有更改?ActiveWorkbook.RejectAllChanges本示例在商业问题中使用规划求解函数,以使总利润达到最大
15、值。SolverSave 函数将当前问题保存到活动工作表上的某一区域。Worksheets(Sheet1).ActivateSolverResetSolverOptions Precision:=0.001SolverOK SetCell:=Range(TotalProfit), _MaxMinVal:=1, _ByChange:=Range(C4:E6)SolverAdd CellRef:=Range(F4:F6), _Relation:=1, _FormulaText:=100SolverAdd CellRef:=Range(C4:E6), _Relation:=3, _FormulaTe
16、xt:=0SolverAdd CellRef:=Range(C4:E6), _Relation:=4SolverSolve UserFinish:=FalseSolverSave SaveArea:=Range(A33)本示例隐藏 Chart1、Chart3 和 Chart5。Charts(Array(Chart1, Chart3, Chart5).Visible = False当激活工作表时,本示例对 A1:A10 区域进行排序。Private Sub Worksheet_Activate()Range(a1:a10).Sort Key1:=Range(a1), Order:=xlAscen
17、dingEnd Sub本示例更改 Microsoft Excel 链接。ActiveWorkbook.ChangeLink c:excelbook1.xls, _c:excelbook2.xls, xlExcelLinks本示例启用受保护的工作表上的自动筛选箭头?ActiveSheet.EnableAutoFilter = TrueActiveSheet.Protect contents:=True, userInterfaceOnly:=True本示例将活动工作簿设为只读?ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly本示例使共享工作簿每三分
18、钟自动更新一次?ActiveWorkbook.AutoUpdateFrequency = 3下述 Sub 过程清除活动工作簿中 Sheet1 上的所有单元格的内容。Sub ClearSheet()Worksheets(Sheet1).Cells.ClearContentsEnd Sub本示例对所有工作簿都关闭滚动条?Application.DisplayScrollBars = False如果具有密码保护的工作簿的文件属性没有加密,则本示例设置指定工作簿的密码加密选项。Sub SetPasswordOptions()With ActiveWorkbookIf .PasswordEncrypti
19、onProvider Microsoft RSA SChannel Cryptographic Provider Then.SetPasswordEncryptionOptions _PasswordEncryptionProvider:=Microsoft RSA SChannel Cryptographic Provider, _PasswordEncryptionAlgorithm:=RC4, _PasswordEncryptionKeyLength:=56, _PasswordEncryptionFileProperties:=TrueEnd IfEnd WithEnd Sub在本示例
20、中,如果活动工作簿不能进行写保护,那么 Microsoft Excel 设置字符串密码以作为活动工作簿的写密码。Sub UseWritePassword()Dim strPassword As StringstrPassword = secret Set password to a string if allowed.If ActiveWorkbook.WriteReserved = False ThenActiveWorkbook.WritePassword = strPasswordEnd IfEnd Sub在本示例中,Microsoft Excel 打开名为 Password.xls 的
21、工作簿,设置它的密码,然后关闭该工作簿。本示例假定名为 Password.xls 的文件位于 C: 驱动器上。Sub UsePassword()Dim wkbOne As WorkbookSet wkbOne = Application.Workbooks.Open(C:Password.xls)wkbOne.Password = secretwkbOne.Close注意 Password 属性可读并返回 “*”。End Sub本示例将 Book1.xls 的当前窗口更改为显示公式。Workbooks(BOOK1.XLS).Worksheets(Sheet1).ActivateActiveWi
22、ndow.DisplayFormulas = True本示例接受活动工作簿中的所有更改?ActiveWorkbook.AcceptAllChanges本示例显示活动工作簿的路径和名称Sub UseCanonical()MsgBox 消息框b7 = ActiveWorkbook.FullName 当前工作簿b8 = ActiveWorkbook.FullNameURLEncoded 活动工作簿End Sub本示例显示 Microsoft Excel 启动文件夹的完整路径。MsgBox Application.StartupPath本示例显示活动工作簿中每个工作表的名称。For Each ws I
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VBA 常用 代码 60
限制150内