ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:48.40KB ,
资源ID:3988864      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3988864.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ExcelVBA编程的常用代码.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ExcelVBA编程的常用代码.docx

1、ExcelVBA编程的常用代码Excel-VBA编程的常用代码Excel VBA编程的常用代码 用过VB的人都应该知道如何声明变量,在VBA中声明变量和VB中是完全一样的!使用Dim语句Dim a as integer 声明a为整型变量Dim a 声明a为变体变量Dim a as string 声明a为字符串变量Dim a as currency ,b as currency ,c as currency 声明a,b,c为货币变量.声明变量可以是:Byte、Boolean、Integer、Long、Currency、Single、Double、Decimal(当前不支持)、Date、Strin

2、g(只限变长字符串)、String * length(定长字符串)、Object、Variant、用户定义类型或对象类型。选择当前单元格所在区域在EXCEL97中,有一个十分好的功能,他就是把鼠标放置在一个有效数据单元格中,执行该段代码,你就可以将连在一起的一片数据全部选中。只要将该段代码加入到你的模块中。Sub My_SelectSelection.CurrentRegion.SelectEnd sub返回当前单元格中数据删除前后空格后的值sub my_trimmsgbox Trim(ActiveCell.Value)end sub单元格位移sub my_offsetActiveCell.O

3、ffset(0, 1).Select当前单元格向左移动一格ActiveCell.Offset(0, -1).Select当前单元格向右移动一格ActiveCell.Offset(1 , 0).Select当前单元格向下移动一格ActiveCell.Offset(-1 , 0).Select当前单元格向上移动一格end sub如果上述程序产生错误那是因为单元格不能移动,为了解除上述错误,我们可以往sub my_offset 之下加一段代码 on error resume next注意以下代码都不再添加 sub “代码名称” 和end sub请自己添加!给当前单元格赋值ActiveCell.Val

4、ue = 你好!给指定单元格赋值例如:单元格内容设为Range(a1).value=hello又如:你现在的工作簿在sheet1上,你要往sheet2的单元格中插入1.sheets(sheet2).selectrange(a1).value=hello或2.Sheets(sheet1).Range(a1).Value = hello说明:1.sheet2被选中,然后在将“HELLO赋到A1单元格中。2.sheet2不必被选中,即可“HELLO赋到sheet2 的A1单元格中。隐藏工作表隐藏SHEET1这张工作表sheets(sheet1).Visible=False显示SHEET1这张工作表s

5、heets(sheet1).Visible=True打印预览有时候我们想把所有的EXCEL中的SHEET都打印预览,请使用该段代码,它将在你现有的工作簿中循环,直到最后一个工作簿结束循环预览。Dim my As WorksheetFor Each my In Worksheetsmy.PrintPreviewNext my得到当前单元格的地址msgbox ActiveCell.Address得到当前日期及时间msgbox date & chr(13) & time保护工作簿ActiveSheet.Protect 取消保护工作簿ActiveSheet.Unprotect给活动工作表改名为 liu

6、ActiveSheet.Name = liu打开一个应用程序AppActivate (Shell(C:/WINDOWS/CALC.EXE)增加一个工作表Worksheets.Add删除活动工作表activesheet.delete打开一个工作簿文件Workbooks.Open FileName:=C:/My Documents/Book2.xls关闭活动窗口ActiveWindow.Close单元格格式选定单元格左对齐Selection.HorizontalAlignment = xlLeft选定单元格居中Selection.HorizontalAlignment = xlCenter选定单元

7、格右对齐Selection.HorizontalAlignment = xlRight选定单元格为百分号风格Selection.Style = Percent选定单元格字体为粗体Selection.Font.Bold = True选定单元格字体为斜体Selection.Font.Italic = True选定单元格字体为宋体20号字With Selection.Font.Name = 宋体.Size = 20End WithWith 语句With 对象.描述End With清除单元格ActiveCell.Clear 删除所有文字、批注、格式返回选定区域的行数MsgBox Selection.R

8、ows.Count返回选定区域的列数MsgBox Selection.Columns.Count返回选定区域的地址Selection.Address忽略所有的错误ON ERROR RESUME NEXT遇错跳转on error goto err_handle中间的其他代码err_handle: 标签跳转后的代码删除一个文件kill c:/1.txt定制自己的状态栏Application.StatusBar = 现在时刻: & Time恢复自己的状态栏Application.StatusBar = false用代码执行一个宏Application.Run macro:=text滚动窗口到a1的位

9、置ActiveWindow.ScrollRow = 1ActiveWindow.ScrollColumn = 1定制系统日期Dim MyDate, MyDayMyDate = #12/12/69#MyDay = Day(MyDate)返回当天的时间Dim MyDate, MyYearMyDate = Date MyYear = Year(MyDate)MsgBox MyYear inputboxXX=InputBox (Enter number of months to add)得到一个文件名Dim kk As Stringkk = Application.GetOpenFilename(EX

10、CEL (*.XLS), *.XLS, Title:=提示:请打开一个EXCEL文件:)msgbox kk打开zoom对话框Application.Dialogs(xlDialogZoom).Show激活字体对话框Application.Dialogs(xlDialogActiveCellFont).Show打开另存对话框Dim kk As Stringkk = Application.GetSaveAsFilename(excel (*.xls), *.xls)Workbooks.Open kk工作簿(Workbook)基本操作应用示例(一)Workbook对象代表工作簿,而Workbook

11、s集合则包含了当前所有的工作簿。下面对Workbook对象的重要的方法和属性以及其它一些可能涉及到的方法和属性进行示例介绍,同时,后面的示例也深入介绍了一些工作簿对象操作的方法和技巧。示例03-01:创建工作簿(Add方法)示例03-01-01Sub CreateNewWorkbook1() MsgBox 将创建一个新工作簿. Workbooks.AddEnd Sub示例03-01-02Sub CreateNewWorkbook2() Dim wb As Workbook Dim ws As Worksheet Dim i As Long MsgBox 将创建一个新工作簿,并预设工作表格式.

12、Set wb = Workbooks.Add Set ws = wb.Sheets(1) ws.Name = 产品汇总表 ws.Cells(1, 1) = 序号 ws.Cells(1, 2) = 产品名称 ws.Cells(1, 3) = 产品数量 For i = 2 To 10 ws.Cells(i, 1) = i - 1 Next iEnd Sub示例03-02:添加并保存新工作簿Sub AddSaveAsNewWorkbook()Dim Wk As WorkbookSet Wk = Workbooks.AddApplication.DisplayAlerts = FalseWk.Save

13、As Filename:=D:/SalesData.xlsEnd Sub示例说明:本示例使用了Add方法和SaveAs方法,添加一个新工作簿并将该工作簿以文件名SalesData.xls保存在D盘中。其中,语句Application.DisplayAlerts = False表示禁止弹出警告对话框。示例03-03:打开工作簿(Open方法)示例03-03-01Sub openWorkbook1() Workbooks.Open /End Sub示例说明:代码中的里的内容需用所需打开的文件的路径及文件名代替。Open方法共有15个参数,其中参数FileName为必需的参数,其余参数可选。示例03

14、-03-02Sub openWorkbook2() Dim fname As String MsgBox 将D盘中的工作簿以只读方式打开 fname = D:/测试.xls Workbooks.Open Filename:=fname, ReadOnly:=TrueEnd Sub示例03-04:将文本文件导入工作簿中(OpenText方法)Sub TextToWorkbook() 本示例打开某文本文件并将制表符作为分隔符对此文件进行分列处理转换成为工作表 Workbooks.OpenText Filename:=/, _ DataType:=xlDelimited, Tab:=TrueEnd

15、Sub示例说明:代码中的里的内容需用所载入的文本文件所在路径及文件名代替。OpenText方法的作用是导入一个文本文件,并将其作为包含单个工作表的工作簿进行分列处理,然后在此工作表中放入经过分列处理的文本文件数据。该方法共有18个参数,其中参数FileName为必需的参数,其余参数可选。示例03-05:保存工作簿(Save方法)示例03-05-01Sub SaveWorkbook() MsgBox 保存当前工作簿. ActiveWorkbook.SaveEnd Sub示例03-05-02Sub SaveAllWorkbook1() Dim wb As Workbook MsgBox 保存所有打

16、开的工作簿后退出Excel. For Each wb In Application.Workbooks wb.Save Next wb Application.QuitEnd Sub示例03-05-03Sub SaveAllWorkbook2() Dim wb As Workbook For Each wb In Workbooks If wb.Path Then wb.Save Next wbEnd Sub示例说明:本示例保存原来已存在且已打开的工作簿。示例03-06:保存工作簿(SaveAs方法)示例03-06-01Sub SaveWorkbook1() MsgBox 将工作簿以指定名保存

17、在默认文件夹中. ActiveWorkbook.SaveAs .xlsEnd Sub示例说明:SaveAs方法相当于“另存为”命令,以指定名称保存工作簿。该方法有12个参数,均为可选参数。如果未指定保存的路径,那么将在默认文件夹中保存该工作簿。如果文件夹中该工作簿名已存在,则提示是否替换原工作簿。示例03-06-02Sub SaveWorkbook2() Dim oldName As String, newName As String Dim folderName As String, fname As String oldName = ActiveWorkbook.Name newName

18、= new & oldName MsgBox 将以的名称保存 folderName = Application.DefaultFilePath fname = folderName & / & newName ActiveWorkbook.SaveAs fnameEnd Sub示例说明:本示例将当前工作簿以一个新名(即new加原名)保存在默认文件夹中。示例03-06-03Sub CreateBak1() MsgBox 保存工作簿并建立备份工作簿 ActiveWorkbook.SaveAs CreateBackup:=TrueEnd Sub示例说明:本示例将在当前文件夹中建立工作簿的备份。示例0

19、3-06-04Sub CreateBak2() MsgBox 保存工作簿时,若已建立了备份,则将出现包含True的信息框,否则出现False. MsgBox ActiveWorkbook.CreateBackupEnd Sub示例03-07:取得当前打开的工作簿数(Count属性)Sub WorkbookNum() MsgBox 当前已打开的工作簿数为: & Chr(10) & Workbooks.CountEnd Sub示例03-08:激活工作簿(Activate方法)示例03-08-01Sub ActivateWorkbook1() Workbooks().ActivateEnd Sub示

20、例说明:Activate方法激活一个工作簿,使该工作簿为当前工作簿。示例03-08-02Sub ActivateWorkbook2() Dim n As Long, i As Long Dim b As String MsgBox 依次激活已经打开的工作簿 n = Workbooks.Count For i = 1 To n Workbooks(i).Activate b = MsgBox(第 & i & 个工作簿被激活,还要继续吗?, vbYesNo) If b = vbNo Then Exit Sub If i = n Then MsgBox 最后一个工作簿已被激活. Next iEnd

21、Sub示例03-09:保护工作簿(Protect方法)Sub ProtectWorkbook() MsgBox 保护工作簿结构,密码为123 ActiveWorkbook.Protect Password:=123, Structure:=True MsgBox 保护工作簿窗口,密码为123 ActiveWorkbook.Protect Password:=123, Windows:=True MsgBox 保护工作簿结构和窗口,密码为123 ActiveWorkbook.Protect Password:=123, Structure:=True, Windows:=TrueEnd Sub示

22、例说明:使用Protect方法来保护工作簿,带有三个可选参数,参数Password指明保护工作簿密码,要解除工作簿保护应输入此密码;参数Structure设置为True则保护工作簿结构,此时不能对工作簿中的工作表进行插入、复制、删除等操作;参数Windows设置为True则保护工作簿窗口,此时该工作簿右上角的最小化、最大化和关闭按钮消失。示例03-10:解除工作簿保护(UnProtect方法)Sub UnprotectWorkbook() MsgBox 取消工作簿保护 ActiveWorkbook.Unprotect 123End Sub示例03-11:工作簿的一些通用属性示例Sub test

23、GeneralWorkbookInfo() MsgBox 本工作簿的名称为 & ActiveWorkbook.Name MsgBox 本工作簿带完整路径的名称为 & ActiveWorkbook.FullName MsgBox 本工作簿对象的代码名为 & ActiveWorkbook.CodeName MsgBox 本工作簿的路径为 & ActiveWorkbook.Path If ActiveWorkbook.ReadOnly Then MsgBox 本工作簿已经是以只读方式打开 Else MsgBox 本工作簿可读写. End If If ActiveWorkbook.Saved Then

24、 MsgBox 本工作簿已保存. Else MsgBox 本工作簿需要保存. End IfEnd Sub示例03-12:访问工作簿的内置属性(BuiltinDocumentProperties属性)示例03-12-01Sub ShowWorkbookProperties() Dim SaveTime As String On Error Resume Next SaveTime = ActiveWorkbook.BuiltinDocumentProperties(Last Save Time).Value If SaveTime = Then MsgBox ActiveWorkbook.Nam

25、e & 工作簿未保存. Else MsgBox 本工作簿已于 & SaveTime & 保存, , ActiveWorkbook.Name End IfEnd Sub示例说明:在Excel中选择菜单“文件属性”命令时将会显示一个“属性”对话框,该对话框中包含了当前工作簿的有关信息,可以在VBA中使用BuiltinDocumentProperties属性访问工作簿的属性。上述示例代码将显示当前工作簿保存时的日期和时间。示例03-12-02Sub listWorkbookProperties() On Error Resume Next 在名为工作簿属性的工作表中添加信息,若该工作表不存在,则新建

26、一个工作表 Worksheets(工作簿属性).Activate If Err.Number 0 Then Worksheets.Add after:=Worksheets(Worksheets.Count) ActiveSheet.Name = 工作簿属性 Else ActiveSheet.Clear End If On Error GoTo 0 ListPropertiesEnd Sub- - - - - - - - - - - - - - - - - - - - - - - Sub ListProperties() Dim i As Long Cells(1, 1) = 名称 Cells

27、(1, 2) = 类型 Cells(1, 3) = 值 Range(A1:C1).Font.Bold = True With ActiveWorkbook For i = 1 To .BuiltinDocumentProperties.Count With .BuiltinDocumentProperties(i) Cells(i + 1, 1) = .Name Select Case .Type Case msoPropertyTypeBoolean Cells(i + 1, 2) = Boolean Case msoPropertyTypeDate Cells(i + 1, 2) = Da

28、te Case msoPropertyTypeFloat Cells(i + 1, 2) = Float Case msoPropertyTypeNumber Cells(i + 1, 2) = Number Case msoPropertyTypeString Cells(i + 1, 2) = string End Select On Error Resume Next Cells(i + 1, 3) = .Value On Error GoTo 0 End With Next i End With Range(A:C).Columns.AutoFitEnd Sub示例说明:本示例代码在“工作簿属性”工作表中列出了当前工作簿中的所有内置属性。示例03-13:测试工作簿中是否包含指定工作表(Sheets属性)Sub testSheetExists() MsgBox 测试工作簿中是否存在指定名称的工作表 Dim b As Boolean b = SheetExists(指定的工作表

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1