办公高手EXCEL常用宏命令

合集下载

EXCEL常用宏命令

EXCEL常用宏命令
[A3] = "='E:\Goods\[VBA.xls]sheet1'!$B$10 "
Range("a1").Value =
n = ThisWorkbook.Sheets.Count
Range("a2").Value = n
For i = 1 To n
Cells(i, 2).Value = Sheets(i).Name
16 用窗体添加列和输入文本的综合举例:
Private Sub CommandButton1_Click()
Dim irow As Integer
irow = [a65536].End(xlUp).Row + 1
Cells(irow, 1) = boBox1.Value
22 显示及隐藏工作表
Sheets("首页").Visible = xlSheetVisible
Sheets("首页").Visible = xlSheetHidden
23 选择单元格:
Range("C2").Select
Range("C2,C5").Select
i = MsgBox("系统提供不同服务,是否浏览资费信息?", vbYesNoCancel, "谷子提示:")
If i = vbYes Then
MsgBox "资费信息:********", , "谷子提示"
Else
"输入要运行的代码"
Next
12、显示/隐藏图表的命令

excel宏命令详细讲解

excel宏命令详细讲解

excel宏命令详细讲解Excel宏命令是一种自动化操作工具,可以用来简化重复性的任务,提高工作效率。

本文将详细讲解一些较为冷门但实用的宏表函数,带你玩转宏命令。

一、自定义宏命令自定义宏命令可以根据个人的需求编写,可用于自动完成一系列复杂的操作。

以下是一个例子:Sub MyMacro'将选定的单元格背景设置为黄色Selection.Interior.Color = RGB(255, 255, 0)End Sub二、输入框函数输入框函数可以用来创建用户交互界面,用户可以在输入框中输入值,作为宏的参数。

以下是一个示例:Sub InputBoxDemoDim Value As StringValue = InputBox("请输入您的姓名:")MsgBox "欢迎您," & ValueEnd Sub三、循环函数循环函数可以重复执行一段代码。

以下是两种常用的循环函数:1. For循环For循环可以让代码块重复执行指定次数。

以下是一个示例:Sub ForLoopDemoDim i As IntegerFor i = 1 To 10Cells(i, 1).Value = iNext iEnd Sub2. Do While循环Do While循环会在条件满足时重复执行代码块。

以下是一个示例:Sub DoWhileLoopDemoDim i As Integeri=1Do While i <= 10Cells(i, 2).Value = i * 2i=i+1LoopEnd Sub四、选择函数选择函数可以用来根据条件选择性地执行不同的代码块。

以下是一个示例:Sub ChooseCaseDemoDim Value As StringValue = InputBox("请输入一个数字:")Select Case ValueCase "1"MsgBox "你输入的是数字1"Case "2"MsgBox "你输入的是数字2"Case ElseMsgBox "你输入的是其他数字"End SelectEnd Sub五、错误处理函数错误处理函数可以捕捉和处理出现的错误。

Excel高级技巧利用宏自动化重复任务

Excel高级技巧利用宏自动化重复任务

Excel高级技巧利用宏自动化重复任务Excel是一款广泛应用的办公软件,提供了许多强大的功能和工具,其中之一就是宏(Macro)。

宏可以帮助我们自动化执行重复性的任务,提高工作效率。

本文将介绍一些Excel高级技巧,重点讲解如何利用宏来自动化重复任务。

一、什么是宏在Excel中,宏是一组多个操作步骤的集合,可以用来自动执行重复性任务。

宏可以记录用户对Excel的操作,并将这些操作步骤转化为一段VBA(Visual Basic for Applications)代码。

通过运行宏,我们可以简化日常工作中的繁琐步骤,实现自动化处理数据的目的。

二、如何录制宏1. 打开Excel软件,选择“开发工具”菜单栏,如果没有“开发工具”选项,需要先进行设置。

2. 点击“宏”按钮,选择“录制宏”选项。

3. 在弹出的对话框中,输入宏的名称和快捷键(可选),然后点击“确定”按钮。

4. 开始进行需要录制的操作步骤,所有的操作都会被记录下来。

5. 完成操作后,点击“停止录制”按钮。

三、编辑和运行宏录制完成后,可以对宏进行编辑和运行。

1. 编辑宏点击“开发工具”菜单栏中的“宏”按钮,选择“编辑”。

在弹出的VBA 编辑器中,可以看到宏的代码。

根据需要,修改代码以实现更精确的功能。

2. 运行宏要运行宏,可以使用以下方法之一:a) 点击“开发工具”菜单栏中的“宏”按钮,选择要运行的宏,然后点击“运行”按钮。

b) 使用宏的快捷键进行运行,快捷键可以在录制宏时设置。

c) 在Excel的工作表中插入一个按钮,然后将运行宏的代码与按钮关联。

四、常用的宏操作下面介绍几个常用的宏操作,以帮助你更好地理解如何利用宏自动化重复任务。

1. 数据筛选和排序在Excel中,我们经常需要对大量数据进行筛选和排序。

利用宏,可以记录筛选和排序的步骤,方便以后再次进行相同操作。

2. 数据格式化要求对一系列数据进行相同的格式化,可以通过宏来实现。

比如,将所有金额加上货币符号,或者将日期格式化为特定的样式等。

EXCEL高级技巧使用宏命令提升工作效率

EXCEL高级技巧使用宏命令提升工作效率

EXCEL高级技巧使用宏命令提升工作效率Excel高级技巧:使用宏命令提升工作效率Excel是一款功能强大的电子表格软件,广泛应用于办公及数据处理领域。

为了提高工作效率,Excel提供了许多高级技巧,其中使用宏命令可以大大简化重复性操作并提高工作效率。

一、什么是宏命令?宏命令是一系列在Excel中自动执行的操作的集合。

宏记录器能记录你在Excel中的操作步骤,并且能够将这些操作保存为一个宏命令。

通过运行宏命令,你可以一次性完成复杂的操作。

二、宏命令的录制与执行1. 录制宏命令:在Excel菜单栏中选择"开发工具",并点击"使用相对引用",然后点击"录制宏"。

在弹出的对话框中,为宏命令命名,并指定宏的存放位置。

点击"确定"后,Excel会开始记录你的操作。

2. 执行宏命令:在"开发工具"中选择"宏",然后选择要执行的宏命令,点击"运行"即可。

三、常见宏命令的使用场景1. 批量处理数据:如果需要对大量的数据进行相同的操作,如插入公式、调整样式等,可以使用宏命令一次性完成。

录制宏命令时,可先手动操作一次,然后将宏命令应用在所有的数据上。

2. 数据筛选与整理:使用宏命令可以快速筛选数据或对数据进行整理。

你可以录制一个宏命令,包含特定条件的筛选,并将其应用于其他类似的数据。

3. 自动化报表生成:如果你需要每天生成相同格式的报表,可以使用宏命令来自动生成。

录制一个宏命令,包含生成报表的所有步骤,并设置定时任务,让Excel自动执行这个宏命令。

4. 自定义快捷键:宏命令可以与快捷键关联,从而更进一步提高工作效率。

你可以录制一个宏命令,并将其关联到特定的快捷键上,以便在工作中快速执行。

四、宏命令使用的注意事项1. 避免死循环:宏命令会根据你录制的操作顺序自动执行,因此需要谨慎处理循环操作,避免陷入死循环。

网优257个Excel宏常用语句

网优257个Excel宏常用语句

257个Excel宏常用语句1、打开全部隐藏工作表 (12)2、循环宏 (13)3、录制宏时调用“停止录制”工具栏 (13)4、高级筛选5列不重复数据至指定表 (13)5、双击单元执行宏(工作表代码) (13)6、双击指定区域单元执行宏(工作表代码) (14)7、进入单元执行宏(工作表代码) (14)8、进入指定区域单元执行宏(工作表代码) (15)9、在多个宏中依次循环执行一个(控件按钮代码) (15)10、在两个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码) (15)11、在三个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码) (16)12、根据A1单元文本隐藏/显示按钮(控件按钮代码) (16)13、当前单元返回按钮名称(控件按钮代码) (16)14、当前单元内容返回到按钮名称(控件按钮代码) (17)15、奇偶页分别打印 (17)16、自动打印多工作表第一页 (17)17、查找A列文本循环插入分页符 (18)18、将A列最后数据行以上的所有B列图片大小调整为所在单元大小 (18)19、返回光标所在行数 (19)20、在A1返回当前选中单元格数量 (19)21、返回当前工作簿中工作表数量 (19)22、返回光标选择区域的行数和列数 (19)23、工作表中包含数据的最大行数 (19)24、返回A列数据的最大行数 (19)25、将所选区域文本插入新建文本框 (20)26、批量插入地址批注 (20)27、批量插入统一批注 (20)28、以A1单元内容批量插入批注 (21)29、不连续区域插入当前文件名和表名及地址 (21)30、不连续区域录入当前单元地址 (21)31、连续区域录入当前单元地址 (21)32、返回当前单元地址 (22)33、不连续区域录入当前日期 (22)34、不连续区域录入当前数字日期 (22)35、不连续区域录入当前日期和时间 (22)36、不连续区域录入对勾 (22)37、不连续区域录入当前文件名 (22)38、不连续区域添加文本 (23)39、不连续区域插入文本 (23)40、从指定位置向下同时录入多单元指定内容 (23)41、按aa工作表A列的内容排列工作表标签顺序 (23)42、以A1单元文本作表名插入工作表 (24)43、删除全部未选定工作表 (24)44、工作表标签排序 (24)45、定义指定工作表标签颜色 (25)46、在目录表建立本工作簿中各表链接目录 (25)47、建立工作表文本目录 (26)48、查另一文件的全部表名 (26)49、当前单元录入计算机名 (26)50、当前单元录入计算机用户名 (27)51、解除全部工作表保护 (27)52、为指定工作表加指定密码保护表 (27)53、在有密码的工作表执行代码 (27)54、执行前需要验证密码的宏(控件按钮代码) (27)55、执行前需要验证密码的宏() (28)56、拷贝A1公式和格式到A2 (28)57、复制单元数值 (28)58、插入数值条件格式 (28)59、插入透明批注 (29)60、添加文本 (29)61、光标定位到指定工作表A列最后数据行下一单元 (29)62、定位选定单元格式相同的全部单元格 (29)63、按当前单元文本定位 (30)64、按固定文本定位 (31)65、删除包含固定文本单元的行或列 (31)66、定位数据及区域以上的空值 (31)67、右侧单元自动加5(工作表代码) (32)68、当前单元加2 (32)69、A列等于A列减B列 (32)70、用于光标选定多区域跳转指定单元(工作表代码) (32)71、将A1单元录入的数据累加到B1单元(工作表代码) (32)72、在指定颜色区域选择单元时添加/取消"√"(工作表代码) (33)73、在指定区域选择单元时添加/取消"√"(工作表代码) (33)74、双击指定单元,循环录入文本(工作表代码) (33)75、双击指定单元,循环录入文本(工作表代码) (34)76、单元区域引用(工作表代码) (34)77、在指定区域选择单元时数值加1(工作表代码) (34)78、混合文本的编号 (34)79、指定区域单元双击数据累加(工作表代码) (34)80、选择单元区域触发事件(工作表代码) (35)81、当修改指定单元内容时自动执行宏(工作表代码) (35)82、被指定单元内容限制执行宏 (35)83、双击单元隐藏该行(工作表代码) (35)84、高亮显示行(工作表代码) (35)85、高亮显示行和列(工作表代码) (35)86、为指定工作表设置滚动范围(工作簿代码) (36)87、在指定单元记录打印和预览次数(工作簿代码) (36)88、自动数字金额转大写(工作表代码) (36)89、将全部工作表的A1单元作为单击按钮(工作簿代码) (36)90、闹钟——到指定时间执行宏(工作簿代码) (36)91、改变Excel界面标题的宏(工作簿代码) (37)92、在指定工作表的指定单元返回光标当前多选区地址(工作簿代码) (37)93、B列录入数据时在A列返回记录时间(工作表代码) (37)94、当指定区域修改时在其右侧的2个单元返回当前日期和时间(工作表代码) (37)95、指定单元显示光标位置内容(工作表代码) (38)96、每编辑一个单元保存文件 (38)97、指定允许编辑区域 (38)98、解除允许编辑区域限制 (38)99、删除指定行 (38)100、删除A列为指定内容的行 (38)101、删除A列非数字单元行 (39)102、有条件删除当前行 (39)103、选择下一行 (39)104、选择第5行开始所有数据行 (39)105、选择光标或选区所在行 (40)106、选择光标或选区所在列 (40)107、光标定位到名称指定位置 (40)108、选择名称定义的数据区 (40)109、选择到指定列的最后行 (40)110、将Sheet1的A列的非空值写到Sheet2的A列 (40)111、将名称1的数据写到名称2 (41)112、单元反选 (41)113、调整选中对象中的文字 (41)114、去除指定范围内的对象 (41)115、更新透视表数据项 (42)116、将全部工作表名称写到A列 (42)117、为当前选定的多单元插入指定名称 (42)118、删除全部名称 (43)119、以指定区域为表目录补充新表 (43)120、按A列数据批量修改表名称 (43)121、按A列数据批量创建新表(控件按钮代码) (44)122、清除剪贴板 (44)123、批量清除软回车 (44)124、判断指定文件是否已经打开 (44)125、当前文件另存到指定目录 (45)126、另存指定文件名 (45)127、以本工作表名称另存文件到当前目录 (45)128、将本工作表单独另存文件到Excel当前默认目录 (45)129、以活动工作表名称另存文件到Excel当前默认目录 (45)130、另存所有工作表为工作簿 (45)131、以指定单元内容为新文件名另存文件 (46)132、以当前日期为新文件名另存文件 (46)133、以当前日期和时间为新文件名另存文件 (46)134、另存本表为TXT文件 (46)135、引用指定位置单元内容为部分文件名另存文件 (47)136、将A列数据排序到D列 (47)137、将指定范围的数据排列到D列 (47)138、光标所在行上移一行 (48)139、加数据有效限制 (48)140、取消数据有效限制 (48)141、重排窗口 (49)142、按当前单元文本选择打开指定文件单元 (49)143、回车光标向右 (49)144、回车光标向下 (49)145、保护工作表时取消选定锁定单元 (50)146、保存并退出Excel (50)147、隐藏/显示指定列空值行 (50)148、深度隐藏指定工作表 (50)149、隐藏指定工作表 (50)150、隐藏当前工作表 (50)151、返回当前工作表名称 (51)152、获取上一次所进入工作簿的工作表名称 (51)153、按光标选定颜色隐藏本列其他颜色行 (51)154、打开工作簿自动隐藏录入表以外的其他表 (51)155、除最左边工作表外深度隐藏所有表 (52)156、关闭文件时自动隐藏指定工作表(ThisWorkbook) (52)157、打开文件时提示指定工作表是保护状态(ThisWorkbook) (52)158、插入10行 (52)159、全选固定范围内小于0的单元 (52)160、全选选定范围内小于0的单元 (53)161、固定区域单元分类变色 (53)162、A列半角内容变红 (54)163、单元格录入数据时运行宏的代码 (54)164、根据B列最后数据快速合并A列单元格的控件代码 (54)165、在F1单元显示光标位置批注内容的代码 (55)166、显示光标所在单元的批注的代码 (55)167、使单元内容保持不变的工作表代码 (55)168、有条件执行宏 (55)169、有条件执行不同的宏 (55)170、提示确定或取消执行宏 (56)171、提示开始和结束 (56)172、拷贝指定表不相邻多列数据到新位置 (56)173、选择2至4行 (56)174、在当前选区有条件替换数值为文本 (56)175、自动筛选全部显示指定列 (57)176、自动筛选第2列值为A的行 (57)177、取消自动筛选() (57)178、全部显示指定表的自动筛选 (57)179、强行合并单元 (57)180、设置单元区域格式 (58)181、在所有工作表的A1单元返回顺序号 (58)182、根据A1单元内容返回C1数值 (58)183、根据A1内容选择执行宏 (58)184、删除A列空行 (59)185、在A列产生不重复随机数 (59)186、将A列数据随机排列到F列 (59)187、取消选定区域的公式只保留值(假空转真空) (60)188、处理导入的显示为科学计数法样式的身份证号 (60)189、返回指定单元的行高和列宽 (60)190、指定行高和列宽 (60)191、指定单元的行高和列宽与A1单元相同 (61)191、填公式 (61)192、建立当前工作表的副本为001表 (61)193、在第一个表前插入多工作表 (61)194、清除A列再插入序号 (61)195、反方向文本(自定义函数) (62)196、指定选择单元区域弹出消息 (62)197、将B列数据添加超链接到K列 (62)198、删除B列数据的超链接 (62)199、分离临时表A列数据的文本和超链接并整理到数据库表 (62)200、分离临时表A列数据的文本和超链接并会同其他数据整理到数据库表 (63)201、返回A列最后一个非空单元行号 (63)202、返回表中第一个非空单元地址(行搜索) (64)203、返回表中各非空单元区域地址(行搜索) (64)204、返回第一个数值行号 (64)205、返回第1行最右边非空单元的列号 (64)206、返回连续数值单元的数量 (64)207、统计指定范围和内容的单元数量 (64)208、统计不同颜色的数字的和(自定义函数) (65)209、返回非空单元数量 (65)210、返回A列非空单元数量 (65)211、返回圆周率π (65)212、定义指定单元内容为页眉/页脚 (65)213、提示并全部清除当前选择区域 (66)214、全部清除当前选择区域 (66)215、清除指定区域数值 (66)216、对指定工作表执行取消隐藏》打印》隐藏工作表 (66)217、打开文件时执行指定宏(工作簿代码) (66)218、关闭文件时执行指定宏(工作簿代码) (67)219、弹出提示A1单元内容 (67)220、延时15秒执行重排窗口宏 (67)221、撤消工作表保护并取消密码 (67)222、重算指定表 (67)223、将第5行移到窗口的最上面 (67)224、对第一张工作表的指定区域进行排序 (68)225、显示指定工作表的打印预览 (68)226、用单元格A1的内容作为文件名另存当前工作簿 (68)227、[禁用/启用]保存和另存的代码 (68)228、在A和B列返回当前选区的名称和公式 (68)229、朗读朗读A列,按ESC键中止 (68)230、朗读固定语句,请按ESC键终止 (69)231、在M和N列的14行以下选择单元时显示调用日历控件(工作表代码) (69)232、添加自定义序列 (70)233、弹出打印对话框 (70)234、返回总页码 (70)235、合并各工作表内容 (70)236、合并指定目录中所有文件中相同格式工作表的数据 (71)237、隐藏指定工作表的指定列 (72)238、把a列不重复值取到e列 (72)239、当前选区的行列数 (72)240、单元格录入1位字符就跳转(工作表代码) (73)241、当指定日期(每月10日)打开文件执行宏 (73)242、提示并清空单元区域 (73)243、返回光标所在行号 (73)244、按照当前行A列的图片名称插入图片到H列 (74)245、当前行下插入1行 (74)246、取消指定行或列的隐藏 (74)247、复制单元格所在行 (75)248、复制单元格所在列 (75)249、新建一个工作表 (75)250、新建一个工作簿 (75)251、选择多表为工作组 (75)252、在当前工作组各表中分别执行指定宏 (76)253、复制当前工作簿的报表到临时工作簿 (77)254、删除指定文件 (77)255、合并A1至C1的内容写到D15单元的批注中 (78)256、自动重算 (78)257、手动重算 (78)1、打开全部隐藏工作表Sub 打开全部隐藏工作表()Dim i As IntegerFor i = 1 To Sheets.CountSheets(i).Visible = TrueNext iEnd Sub2、循环宏Sub 循环()AAA = Range("C2")Dim i As LongDim times As Longtimes = AAA'times代表循环次数,执行前把times赋值即可(不可小于1,不可大于2147483647) For i = 1 To timesCall 过滤一行If Range("完成标志") = "完成" ThenExit For'如果名为'完成标志'的命名单元的值等于'完成',则退出循环,如果一开始就等于'完成',则只执行一次循环就退出'If Sheets("传送参数").Range("A" & i).Text = "完成" Then Exit For'如果某列出现"完成"内容则退出循环Next iEnd Sub3、录制宏时调用“停止录制”工具栏Sub 录制宏时调用停止录制工具栏()mandBars("Stop Recording").Visible = TrueEnd Sub4、高级筛选5列不重复数据至指定表Sub 高级筛选5列不重复数据至Sheet2()Sheets("Sheet2").Range("A1:E65536") = "" '清除Sheet2的A:D列Range("A1:E65536").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheet2.Range( _ "A1"), Unique:=TrueSheet2.Columns("A:E").Sort Key1:=Sheet2.Range("A2"), Order1:=xlAscending,Header:=xlGuess, _OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _:=xlPinYinEnd Sub5、双击单元执行宏(工作表代码)Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Range("$A$1") = "关闭" ThenExit SubSelect Case Target.AddressCase "$A$4"Call 宏1Cancel = TrueCase "$B$4"Call 宏2Cancel = TrueCase "$C$4"Call 宏3Cancel = TrueCase "$E$4"Call 宏4Cancel = TrueEnd SelectEnd Sub6、双击指定区域单元执行宏(工作表代码)Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Range("$A$1") = "关闭" Then Exit SubIf Not Application.Intersect(Target, Range("A4:A9", "C4:C9")) Is Nothing Then Call 打开隐藏表End Sub7、进入单元执行宏(工作表代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)'以单元格进入代替按钮对象调用宏If Range("$A$1") = "关闭" Then Exit SubSelect Case Target.AddressCase "$A$5" '单元地址(Target.Address),或命名单元名字()Call 宏1Case "$B$5"Call 宏2Case "$C$5"Call 宏3End SelectEnd Sub8、进入指定区域单元执行宏(工作表代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)If Range("$A$1") = "关闭" Then Exit SubIf Not Application.Intersect(Target, Range("A4:A9","C4:C9")) Is Nothing Then Call 打开隐藏表End Sub9、在多个宏中依次循环执行一个(控件按钮代码)Private Sub CommandButton1_Click()Static RunMacro As IntegerSelect Case RunMacroCase 0宏1RunMacro = 1Case 1宏2RunMacro = 2Case 2宏3RunMacro = 0End SelectEnd Sub10、在两个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)Private Sub CommandButton1_Click()With CommandButton1If .Caption = "保护工作表" ThenCall 保护工作表.Caption = "取消工作表保护"Exit SubEnd IfIf .Caption = "取消工作表保护" ThenCall 取消工作表保护.Caption = "保护工作表"Exit SubEnd IfEnd WithEnd Sub11、在三个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)Option ExplicitPrivate Sub CommandButton1_Click()With CommandButton1If .Caption = "宏1" ThenCall 宏1.Caption = "宏2"Exit SubEnd IfIf .Caption = "宏2" ThenCall 宏2.Caption = "宏3"Exit SubEnd IfIf .Caption = "宏3" ThenCall 宏3.Caption = "宏1"Exit SubEnd IfEnd WithEnd Sub12、根据A1单元文本隐藏/显示按钮(控件按钮代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)If Range("A1") > 2 ThenCommandButton1.Visible = 1ElseCommandButton1.Visible = 0End IfEnd SubPrivate Sub CommandButton1_Click()重排窗口End Sub13、当前单元返回按钮名称(控件按钮代码)Private Sub CommandButton1_Click()ActiveCell = CommandButton1.CaptionEnd Sub14、当前单元内容返回到按钮名称(控件按钮代码)Private Sub CommandButton1_Click()CommandButton1.Caption = ActiveCellEnd Sub15、奇偶页分别打印Sub 奇偶页分别打印()Dim i%, Ps%Ps = ExecuteExcel4Macro("GET.DOCUMENT(50)") '总页数MsgBox "现在打印奇数页,按确定开始."For i = 1 To Ps Step 2ActiveSheet.PrintOut from:=i, To:=iNext iMsgBox "现在打印偶数页,按确定开始."For i = 2 To Ps Step 2ActiveSheet.PrintOut from:=i, To:=iNext iEnd Sub16、自动打印多工作表第一页Sub 自动打印多工作表第一页()Dim sh As IntegerDim xDim yDim syDim syzx = InputBox("请输入起始工作表名字:")sy = InputBox("请输入结束工作表名字:")y = Sheets(x).Indexsyz = Sheets(sy).IndexFor sh = y To syzSheets(sh).SelectSheets(sh).PrintOut from:=1, To:=1Next shEnd Sub17、查找A列文本循环插入分页符Sub 循环插入分页符()' Selection = Workbooks("临时表").Sheets("表2").Range("A1") 调用指定地址内容Dim i As LongDim times As Longtimes = Application.WorksheetFunction.CountIf(Sheet1.Range("a:a"), "分页") 'times代表循环次数,执行前把times赋值即可(不可小于1,不可大于2147483647) For i = 1 To timesCall 插入分页符Next iEnd SubSub 插入分页符()Cells.Find(What:="分页", After:=ActiveCell, LookIn:=xlValues, LookAt:= _xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) _.ActivateActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCellEnd SubSub 取消原分页()Cells.SelectActiveSheet.ResetAllPageBreaksEnd Sub18、将A列最后数据行以上的所有B列图片大小调整为所在单元大小Sub 将A列最后数据行以上的所有B列图片大小调整为所在单元大小() Dim Pic As Picture, i&i = [A65536].End(xlUp).RowFor Each Pic In Sheet1.PicturesIf Not Application.Intersect(Pic.TopLeftCell, Range("B1:B" & i)) Is Nothing Then Pic.Top = Pic.TopLeftCell.TopPic.Left = Pic.TopLeftCell.LeftPic.Height = Pic.TopLeftCell.HeightPic.Width = Pic.TopLeftCell.WidthEnd IfNextEnd Sub19、返回光标所在行数Sub 返回光标所在行数()x = ActiveCell.RowRange("A1") = xEnd Sub20、在A1返回当前选中单元格数量Sub 在A1返回当前选中单元格数量()[A1] = Selection.CountEnd Sub21、返回当前工作簿中工作表数量Sub 返回当前工作簿中工作表数量()t = Application.Sheets.CountMsgBox tEnd Sub22、返回光标选择区域的行数和列数Sub 返回光标选择区域的行数和列数()x = Selection.Rows.County = Selection.Columns.CountRange("A1") = xRange("A2") = yEnd Sub23、工作表中包含数据的最大行数Sub 包含数据的最大行数()n = Cells.Find("*", , , , 1, 2).RowMsgBox nEnd Sub24、返回A列数据的最大行数Sub 返回A列数据的最大行数()n = Range("a65536").End(xlUp).RowRange("B1") = nEnd Sub25、将所选区域文本插入新建文本框Sub 将所选区域文本插入新建文本框()For Each rag In Selectionn = n & rag.Value & Chr(10)NextActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, ActiveCell.Left + ActiveCell.Width, ActiveCell.Top + ActiveCell.Height, 250#, 100).SelectSelection.Characters.Text = "问题:" & nWith Selection.Characters(Start:=1, Length:=3).Font.Name = "黑体".FontStyle = "常规".Size = 12End WithEnd Sub26、批量插入地址批注Sub 批量插入地址批注()On Error Resume NextDim r As RangeIf Selection.Cells.Count > 0 ThenFor Each r In Selectionment.Deleter.AddCommentment.Visible = Falsement.Text Text:="本单元格:" & r.Address & " of " & Selection.Address NextEnd IfEnd Sub27、批量插入统一批注Sub 批量插入统一批注()Dim r As Range, msg As Stringmsg = InputBox("请输入欲批量插入的批注", "提示", "随便输点什么吧")If Selection.Cells.Count > 0 ThenFor Each r In Selectionr.AddCommentment.Visible = Falsement.Text Text:=msgNextEnd IfEnd Sub28、以A1单元内容批量插入批注Sub 以A1单元内容批量插入批注()Dim r As RangeIf Selection.Cells.Count > 0 ThenFor Each r In Selectionr.AddCommentment.Visible = Falsement.Text Text:=[a1].TextNextEnd IfEnd Sub29、不连续区域插入当前文件名和表名及地址Sub 批量插入当前文件名和表名及地址()For Each mycell In Selectionmycell.FormulaR1C1 = "[" + + "]" + + "!" + mycell.AddressNextEnd Sub30、不连续区域录入当前单元地址Sub 区域录入当前单元地址()For Each mycell In Selectionmycell.FormulaR1C1 = mycell.AddressNextEnd Sub31、连续区域录入当前单元地址Sub 连续区域录入当前单元地址()Selection = "=ADDRESS(ROW(),COLUMN(),4,1)"Selection.CopySelection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _:=False, Transpose:=FalseEnd Sub32、返回当前单元地址Sub 返回当前单元地址()d = ActiveCell.Address[A1] = dEnd Sub33、不连续区域录入当前日期Sub 区域录入当前日期()Selection.FormulaR1C1 = Format(Now(), "yyyy-m-d")End Sub34、不连续区域录入当前数字日期Sub 区域录入当前数字日期()Selection.FormulaR1C1 = Format(Now(), "yyyymmdd")End Sub35、不连续区域录入当前日期和时间Sub 区域录入当前日期和时间()Selection.FormulaR1C1 = Format(Now(), "yyyy-m-d h:mm:ss") End Sub36、不连续区域录入对勾Sub 批量录入对勾()Selection.FormulaR1C1 = "√"End Sub37、不连续区域录入当前文件名Sub 批量录入当前文件名()Selection.FormulaR1C1 = End Sub38、不连续区域添加文本Sub 批量添加文本()Dim s As RangeFor Each s In Selections = s & "文本内容"NextEnd Sub39、不连续区域插入文本Sub 批量插入文本()Dim s As RangeFor Each s In Selections = "文本内容" & sNextEnd Sub40、从指定位置向下同时录入多单元指定内容Sub 从指定位置向下同时录入多单元指定内容()Dim arrarr = Array("1", "2", "13", "25", "46", "12", "0", "20")[B2].Resize(8, 1) = Application.WorksheetFunction.Transpose(arr) End Sub41、按aa工作表A列的内容排列工作表标签顺序Sub 按aa工作表A列的内容排列工作表标签顺序()Dim I%, str1$I = 1Sheets("aa").SelectDo While Cells(I, 1).Value <> ""str1 = Trim(Cells(I, 1).Value)Sheets(str1).SelectSheets(str1).Move after:=Sheets(I)I = I + 1Sheets("aa").SelectLoopEnd Sub42、以A1单元文本作表名插入工作表Sub 以A1单元文本作表名插入工作表()Dim nm As Stringnm = [a1]Sheets.Add = nmEnd Sub43、删除全部未选定工作表Sub 删除全部未选定工作表()Dim sht As Worksheet, n As Integer, iFlag As BooleanDim ShtName() As Stringn = ActiveWindow.SelectedSheets.CountReDim ShtName(1 To n)n = 1For Each sht In ActiveWindow.SelectedSheetsShtName(n) = n = n + 1NextApplication.DisplayAlerts = FalseFor Each sht In SheetsiFlag = FalseFor i = 1 To n - 1If ShtName(i) = TheniFlag = TrueExit ForEnd IfNextIf Not iFlag Then sht.DeleteNextApplication.DisplayAlerts = TrueEnd Sub44、工作表标签排序Sub 工作表标签排序()Dim i As Long, j As Long, nums As Long, msg As Longmsg = MsgBox("工作表按升序排列请选'是[Y]'. " & vbCrLf & vbCrLf & "工作表按降序排列请选'否[N]'", vbYesNoCancel, "工作表排序")If msg = vbCancel Then Exit Subnums = Sheets.CountIf msg = vbYes Then 'Sort ascendingFor i = 1 To numsFor j = i To numsIf UCase(Sheets(j).Name) < UCase(Sheets(i).Name) ThenSheets(j).Move Before:=Sheets(i)End IfNext jNext iElse 'Sort descendingFor i = 1 To numsFor j = i To numsIf UCase(Sheets(j).Name) > UCase(Sheets(i).Name) ThenSheets(j).Move Before:=Sheets(i)End IfNext jNext iEnd IfEnd Sub45、定义指定工作表标签颜色Sub 定义指定工作表标签颜色()Sheets("Sheet1").Tab.ColorIndex = 46End Sub46、在目录表建立本工作簿中各表链接目录Sub 在目录表建立本工作簿中各表链接目录()Dim s%, Rng As RangeOn Error Resume NextSheets("目录").ActivateIf Err = 0 ThenSheets("目录").UsedRange.DeleteElseSheets.Add = "目录"End IfFor i = 1 To Sheets.CountIf Sheets(i).Name <> "目录" Thens = s + 1Set Rng = Sheets("目录").Cells(((s - 1) Mod 20) + 1, (s - 1) \ 20 + 1 + 1)Rng = Format(s, " 0") & ". " & Sheets(i).NameActiveSheet.Hyperlinks.Add Rng, "#" & Sheets(i).Name & "!A1", ScreenTip:=Sheets(i).NameEnd IfNextSheets("目录").Range("b:iv").EntireColumn.ColumnWidth = 20End Sub47、建立工作表文本目录Sub 建立工作表文本目录()Sheets.Add before:=Sheets(1)Sheets(1).Name = "目录"For i = 2 To Sheets.CountCells(i - 1, 1) = Sheets(i).Name'Sheets(1).Hyperlinks.Add Cells(i - 1, 1), "#" & Sheets(i).Name & "!A1" '添加超链接NextEnd Sub48、查另一文件的全部表名Sub 查另一文件的全部表名()On Error Resume NextDim i%Dim sh As WorksheetApplication.ScreenUpdating = FalseWorkbooks.Open & "\2.xls"Windows("1.xls").Activate '当前文件名称Sheets("Sheet1").Select '当前表名称i = 1 '将表名称返回到第1行For Each sh In Workbooks("2.xls").WorksheetsCells(i, 1) = '将表名称返回到第1列i = i + 1 '返回每个表名称向下移动1行Next shWindows("2.xls").Close '关闭对象文件Application.ScreenUpdating = TrueEnd Sub49、当前单元录入计算机名Sub 当前单元录入计算机名()Selection = Environ("COMPUTERNAME")'Selection = Workbooks("临时表").Sheets("表2").Range("A1") 调用指定地址内容End Sub50、当前单元录入计算机用户名Sub 当前单元录入计算机用户名()Selection = Environ("Username")'Selection = Workbooks("临时表").Sheets("表2").Range("A1") 调用指定地址内容End Sub51、解除全部工作表保护Sub 解除全部工作表保护()Dim n As IntegerFor n = 1 To Sheets.CountSheets(n).UnprotectNext nEnd Sub52、为指定工作表加指定密码保护表Sub 为指定工作表加指定密码保护表()Sheet10.Protect Password:="123"End Sub53、在有密码的工作表执行代码Sub 在有密码的工作表执行代码()Sheets("1").Unprotect Password:=123 '假定表名为“1”,密码为“123”打开工作表Range("C:C").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True '隐藏C列空值行Sheets("1").Protect Password:=123 '重新用密码保护工作表End Sub54、执行前需要验证密码的宏(控件按钮代码)Private Sub CommandButton1_Click()If InputBox("请输入密码:") <> "123" Then '密码是123MsgBox "密码错误,按确定退出!", 64, "提示"Exit SubEnd IfCells(1, 1) = 10End Sub55、执行前需要验证密码的宏()Sub 执行前需要验证密码的宏()If InputBox("请输入您的使用权限:", "系统提示") = 123 Then重排窗口'要执行的宏代码或宏名称ElseMsgBox "对不起,您没有使用该宏的权限,按确定键后退出!"End IfEnd Sub56、拷贝A1公式和格式到A2Sub 拷贝A1公式到A2()Workbooks("临时表").Sheets("表1").Range("A1").CopyWorkbooks("临时表").Sheets("表2").Range("A2").PasteSpecialEnd Sub57、复制单元数值Sub 复制数值()s = Workbooks("book1").Sheets("Sheet1").Range("A1:A2")Workbooks("book2").Sheets("Sheet1").Range("A1:A2") = sEnd Sub58、插入数值条件格式Sub 插入数值条件格式()Selection.FormatConditions.DeleteSelection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _ Formula1:="70"Selection.FormatConditions(1).Interior.ColorIndex = 45Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _ Formula1:="55"Selection.FormatConditions(2).Interior.ColorIndex = 39Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _ Formula1:="60"Selection.FormatConditions(3).Interior.ColorIndex = 34End Sub59、插入透明批注Sub 插入透明批注()Selection.AddCommentment.Visible = FalseDim XS As WorksheetFor i = 1 To ments.Countments(i).Text "透明批注"ments(i).Shape.Fill.Visible = msoFalseNextEnd Sub60、添加文本Sub 添加文本()Selection = Selection + "×" '不可在数字后添加文本'Selection = Workbooks("临时表").Sheets("表2").Range("A1") 调用指定地址内容End Sub61、光标定位到指定工作表A列最后数据行下一单元Sub 光标定位到指定工作表A列最后数据行下一单元()a = Sheets("数据库").[a65536].End(xlUp).RowSheets("数据库").SelectRange("A" & a + 1).SelectEnd Sub62、定位选定单元格式相同的全部单元格Sub 定位选定单元格式相同的全部单元格()Dim FirstCell As Range, FoundCell As RangeDim AllCells As RangeWith Application.FindFormat.Clear.NumberFormatLocal = Selection.NumberFormatLocal.HorizontalAlignment = Selection.HorizontalAlignment.VerticalAlignment = Selection.VerticalAlignment.WrapText = Selection.WrapText.Orientation = Selection.Orientation.AddIndent = Selection.AddIndent.IndentLevel = Selection.IndentLevel.ShrinkToFit = Selection.ShrinkToFit.MergeCells = Selection.MergeCells = .Font.FontStyle = Selection.Font.FontStyle.Font.Size = Selection.Font.Size.Font.Strikethrough = Selection.Font.Strikethrough.Font.Subscript = Selection.Font.Subscript.Font.Underline = Selection.Font.Underline.Font.ColorIndex = Selection.Font.ColorIndex.Interior.ColorIndex = Selection.Interior.ColorIndex.Interior.Pattern = Selection.Interior.Pattern.Locked = Selection.Locked.FormulaHidden = Selection.FormulaHiddenEnd WithSet FirstCell = edRange.Find(what:="", searchformat:=True)If FirstCell Is Nothing ThenExit SubEnd IfSet AllCells = FirstCellSet FoundCell = FirstCellDoSet FoundCell = edRange.Find(After:=FoundCell, what:="", searchformat:=True)If FoundCell Is Nothing Then Exit DoSet AllCells = Union(FoundCell, AllCells)If FoundCell.Address = FirstCell.Address Then Exit DoLoopAllCells.SelectEnd Sub63、按当前单元文本定位Sub 按当前单元文本定位()ABC = SelectionDim aa As RangeFor Each a In edRangeIf a Like ABC ThenIf aa Is Nothing ThenSet aa = a.CellsElseSet aa = Union(aa, a.Cells)End IfEnd IfNextaa.SelectEnd Sub64、按固定文本定位Sub 文本定位()Dim aa As RangeFor Each a In edRangeIf a Like "*合计*" ThenIf aa Is Nothing ThenSet aa = a.CellsElseSet aa = Union(aa, a.Cells)End IfEnd IfNextaa.SelectEnd Sub65、删除包含固定文本单元的行或列Sub 删除包含固定文本单元的行或列()DoCells.Find(what:="哈哈").ActivateSelection.EntireRow.Delete '删除行' Selection.EntireColumn.Delete '删除列Loop Until Cells.Find(what:="哈哈") Is Nothing End Sub66、定位数据及区域以上的空值Sub 定位数据及区域以上的空值()Dim aa As RangeFor Each a In edRangeIf a Like 〈0 ThenIf aa Is Nothing ThenSet aa = a.CellsElseSet aa = Union(aa, a.Cells)End IfEnd IfNextaa.SelectEnd Sub67、右侧单元自动加5(工作表代码)Private Sub Worksheet_Change(ByVal Target As Range)Application.EnableEvents = FalseTarget.Offset(0, 1) = Target + 5Application.EnableEvents = TrueEnd Sub68、当前单元加2Sub 当前单元加2()Selection = Selection + 2'Selection = Workbooks("临时表").Sheets("表2").Range("A1") 调用指定地址内容End Sub69、A列等于A列减B列Sub A列等于A列减B列()For i = 1 To 23Cells(i, 1) = Cells(i, 1) - Cells(i, 2)NextEnd Sub70、用于光标选定多区域跳转指定单元(工作表代码)Private Sub Worksheet_SelectionChange(ByVal T As Range)a = Array([b6:b7], [e6], [h6])For i = 0 To 2If Not Application.Intersect(T, a(i)) Is Nothing Then[a1].Select: Exit ForEnd IfNextEnd Sub71、将A1单元录入的数据累加到B1单元(工作表代码)Private Sub Worksheet_Change(ByVal Target As Range)Dim t As LongIf Target.Address = "$A$1" Thent = Sheet1.Range("$B$1").ValueSheet1.Range("$B$1").Value = t + Target.ValueEnd IfEnd Sub72、在指定颜色区域选择单元时添加/取消"√"(工作表代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)Dim myrg As RangeFor Each myrg In TargetIf myrg.Interior.ColorIndex = 37 Then myrg = IIf(myrg <> "√", "√", "") NextEnd Sub73、在指定区域选择单元时添加/取消"√"(工作表代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)Dim Rng As RangeIf Target.Count <= 15 ThenIf Not Application.Intersect(Target, Range("D6:D20")) Is Nothing Then For Each Rng In SelectionWith RngIf .Value = "" Then.Value = "√"Else.Value = ""End IfEnd WithNextEnd IfEnd IfEnd Sub74、双击指定单元,循环录入文本(工作表代码)Private Sub Worksheet_BeforeDoubleClick(ByVal T As Range, Cancel As Boolean)If T.Address <> "$A$1" Then Exit SubCancel = TrueT = IIf(T = "好", "中", IIf(T = "中", "差", "好"))End Sub75、双击指定单元,循环录入文本(工作表代码)Dim nums As BytePrivate Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)If Target.Address = "$A$1" Thennums = nums Mod 3 + 1Target = Mid("上中下", nums, 1)Target.Offset(1, 0).SelectEnd IfEnd Sub76、单元区域引用(工作表代码)Private Sub Worksheet_Activate()Sheet1.Range("A1:B3").Value = Sheet2.Range("A1:B3").ValueEnd Sub77、在指定区域选择单元时数值加1(工作表代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)If Not Application.Intersect([a1:e10], Target) Is Nothing ThenTarget = Val(Target) + 1End IfEnd Sub78、混合文本的编号Sub 混合文本的编号()Worksheets(1).Range("B2").Value = "北京" & (--(Mid(Worksheets(1).Range("B2"), 3, 100)) + 1) End Sub79、指定区域单元双击数据累加(工作表代码)Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)If Not Application.Intersect([A1:Y100], Target) Is Nothing Thenoldvalue = Val(Target.Value)inputvalue = InputBox("请输入数量,按ENTER键确认!", "数值累加器")Target.Value = oldvalue + inputvalueEnd IfEnd Sub。

Excel-259个常用宏

Excel-259个常用宏
序号
代码目录
链接 类别
1 打开全部隐藏工作表
点击
2 循环宏
点击
3 录制宏时调用“停止录制”工具栏
点击
4 高级筛选5列不重复数据至指定表
点击
5 双击单元执行宏(工作表代码)
点击
6 双击指定区域单元执行宏(工作表代码)
点击
7 进入单元执行宏(工作表代码)
点击
8 进入指定区域单元执行宏(工作表代码)
点击
9 在多个宏中依次循环执行一个(控件按钮代码)
点击
33 不连续区域录入当前日期
点击
34 不连续区域录入当前数字日期
点击
35 不连续区域录入当前日期和时间
点击
36 不连续区域录入对勾
点击
37 不连续区域录入当前文件名
点击
38 不连续区域添加文本
点击
39 不连续区域插入文本
点击
40 从指定位置向下同时录入多单元指定内容
点击
41 按aa工作表A列的内容排列工作表标签顺序
102 选择第5行开始所有数据行
103 选择光标或选区所在行
104 选择光标或选区所在列
105 光标定位到名称指定位置
106 选择名称定义的数据区
107 选择到指定列的最后行
108 将Sheet1的A列的非空值写到Sheet2的A列
109 将名称1的数据写到名称2
110 单元反选
111 调整选中对象中的文字
点击
52 为指定工作表加指定密码保护表
点击
53 在有密码的工作表执行代码
点击
54 执行前需要验证密码的宏(控件按钮代码)
点击
55 拷贝A1公式和格式到A2

EXCEL中的宏使用实例

EXCEL中的宏使用实例

EXCEL中的宏使用实例Excel是一款功能强大的电子表格软件,其中的宏功能可以帮助用户自动化完成一系列重复性的任务。

下面是一些常见的Excel宏使用实例:1.自动填充数据宏可以帮助快速填充数据。

例如,假设有一列A1:A10的单元格需要填入连续的数字,可以使用宏录制工具录制以下操作:选择A1:A10,输入1,按下Ctrl+Enter,Excel将自动为选定的单元格填入连续数字。

2.批量修改格式宏可以快速批量修改单元格的格式。

例如,假设有一个表格中有很多日期,需要将日期格式修改为年月日的形式。

可以使用宏记录以下操作:选择需要修改的日期单元格,右键点击,选择“格式单元格”,在“数字”选项卡中选择日期格式,并点击确定。

3.数据清理与转换宏可以帮助清理和转换大量的数据。

例如,假设有一列A1:A1000的单元格需要删除其中的空行。

可以使用宏录制以下操作:选择A1:A1000,按下Ctrl+Shift+L,这会自动选择整个表格,点击数据选项卡中的“筛选”按钮,选择“清除筛选”,然后选择“仅选择的单元格”并点击确定。

4.数据分析和计算宏可以用于进行数据分析和计算。

例如,假设有一个表格中的B列和C列需要求和,并将结果显示在D列中。

可以使用宏录制以下操作:选择D1单元格,输入函数“=SUM(B1:C1)”,然后使用填充手柄将公式拖拽到D1000单元格。

5.自定义菜单与工具栏宏可以用来创建自定义菜单和工具栏,以便快速访问和执行特定的功能。

例如,假设有一组常用的宏,可以使用宏记录以下操作:点击Excel 的“开发者”选项卡,点击“插入”按钮,选择“按钮(表单控件)”,在工作表上绘制按钮,并选择要执行的宏。

6.数据导入与导出宏可以帮助将数据从其他格式导入到Excel或从Excel导出到其他格式。

例如,假设有一个CSV文件需要导入到Excel中的Sheet1中,可以使用宏录制以下操作:点击Excel的“数据”选项卡,选择“从文本”按钮,选择CSV文件并按照向导进行导入。

EXCEL宏命令大全

EXCEL宏命令大全

EXCEL宏命令⼤全Excel表格公式⼤全1、查找重复内容公式:=IF(COUNTIF(A:A,A2)>1,"重复","")。

2、⽤出⽣年⽉来计算年龄公式:=TRUNC((DAYS360(H6,"2009/8/30",FALSE))/360,0)。

3、从输⼊的18位⾝份证号的出⽣年⽉计算公式:=CONCATENATE(MID(E2,7,4),"/",MID(E2,11,2),"/",MID(E2,13,2))。

4、从输⼊的⾝份证号码内让系统⾃动提取性别,可以输⼊以下公式:=IF(LEN(C2)=15,IF(MOD(MID(C2,15,1),2)=1,"男","⼥"),IF(MOD(MID(C2,17,1),2)=1,"男","⼥"))公式内的“C2”代表的是输⼊⾝份证号码的单元格。

1、求和:=SUM(K2:K56)——对K2到K56这⼀区域进⾏求和;2、平均数:=AVERAGE(K2:K56)——对K2K56这⼀区域求平均数;3、排名:=RANK(K2,K$2:K$56)——对55名学⽣的成绩进⾏排名;4、等级:=IF(K2>=85,"优",IF(K2>=74,"良",IF(K2>=60,"及格","不及格")))5、学期总评:=K20.3+M20.3+N20.4——假设K列、M列和N列分别存放着学⽣的“平时总评”、“期中”、“期末”三项成绩;6、最⾼分:=MAX(K2:K56)——求K2到K56区域(55名学⽣)的最⾼分;7、最低分:=MIN(K2:K56)——求K2到K56区域(55名学⽣)的最低分;8、分数段⼈数统计:(1)=COUNTIF(K2:K56,"100")——求K2到K56区域100分的⼈数;假设把结果存放于K57单元格;(2)=COUNTIF(K2:K56,">=95")-K57——求K2到K56区域95~99.5分的⼈数;假设把结果存放于K58单元格;(3)=COUNTIF(K2:K56,">=90")-SUM(K57:K58)——求K2到K56区域90~94.5分的⼈数;假设把结果存放于K59单元格;(4)=COUNTIF(K2:K56,">=85")-SUM(K57:K59)——求K2到K56区域85~89.5分的⼈数;假设把结果存放于K60单元格;(5)=COUNTIF(K2:K56,">=70")-SUM(K57:K60)——求K2到K56区域70~84.5分的⼈数;假设把结果存放于K61单元格;(6)=COUNTIF(K2:K56,">=60")-SUM(K57:K61)——求K2到K56区域60~69.5分的⼈数;假设把结果存放于K62单元格;(7)=COUNTIF(K2:K56,"<60")——求K2到K56区域60分以下的⼈数;假设把结果存放于K63单元格;说明:COUNTIF函数也可计算某⼀区域男、⼥⽣⼈数。

excel宏条件语句

excel宏条件语句

excel宏条件语句Excel是一款功能强大的电子表格软件,它提供了丰富的宏条件语句,使用户能够根据特定的条件来控制程序的执行流程。

下面列举了10个常用的Excel宏条件语句,帮助您更好地理解和应用这些语句。

一、IF语句(条件判断)IF语句是Excel宏中最常用的条件语句,用于根据条件的真假来执行不同的操作。

它的基本语法如下:IF(条件, 真值, 假值)其中,条件是一个逻辑表达式,真值表示条件为真时要执行的操作,假值表示条件为假时要执行的操作。

二、SELECT CASE语句(多条件判断)SELECT CASE语句用于根据多个条件的不同值来执行不同的操作。

它的基本语法如下:SELECT CASE 表达式CASE 值1'执行操作1CASE 值2'执行操作2CASE ELSE'执行默认操作END SELECT其中,表达式是一个变量或表达式,值1、值2等表示不同的条件值,CASE ELSE用于处理除了之前列举的条件之外的情况。

三、FOR NEXT语句(循环执行)FOR NEXT语句用于在宏中创建一个循环结构,使某段代码重复执行指定次数。

它的基本语法如下:FOR 变量 = 初始值 TO 终止值 STEP 步长'执行操作NEXT 变量其中,变量是一个用于计数的变量,初始值表示循环起始值,终止值表示循环结束值,步长表示每次循环增加或减少的量。

四、DO WHILE语句(条件循环)DO WHILE语句用于在宏中创建一个条件循环,使某段代码重复执行,直到满足指定的条件为止。

它的基本语法如下:DO WHILE 条件'执行操作LOOP其中,条件是一个逻辑表达式,当条件为真时,继续执行循环体内的操作,直到条件为假时退出循环。

五、EXIT DO语句(退出循环)EXIT DO语句用于在循环中提前退出,不再执行循环体内的代码。

它的使用方式如下:DO WHILE 条件'执行操作IF 条件2 THENEXIT DOEND IFLOOP其中,条件2用于判断是否满足退出循环的条件,如果满足,则执行EXIT DO语句后的代码,退出循环。

257个Excel宏常用语句

257个Excel宏常用语句

257个Excel宏常用语句257个Excel宏常用语句1、打开全部隐藏工作表 (7)2、循环宏 (7)3、录制宏时调用“停止录制”工具栏 (7)4、高级筛选5列不重复数据至指定表 (7)5、双击单元执行宏(工作表代码) (8)6、双击指定区域单元执行宏(工作表代码) (8)7、进入单元执行宏(工作表代码) (8)8、进入指定区域单元执行宏(工作表代码) (9)9、在多个宏中依次循环执行一个(控件按钮代码) (9)10、在两个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码) (9)11、在三个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码) (10)12、根据A1单元文本隐藏/显示按钮(控件按钮代码) (10)13、当前单元返回按钮名称(控件按钮代码) (10)14、当前单元内容返回到按钮名称(控件按钮代码) (11)15、奇偶页分别打印 (11)16、自动打印多工作表第一页 (11)17、查找A列文本循环插入分页符 (12)18、将A列最后数据行以上的所有B列图片大小调整为所在单元大小 (12)19、返回光标所在行数 (13)20、在A1返回当前选中单元格数量 (13)21、返回当前工作簿中工作表数量 (13)22、返回光标选择区域的行数和列数 (13)23、工作表中包含数据的最大行数 (13)24、返回A列数据的最大行数 (13)25、将所选区域文本插入新建文本框 (14)26、批量插入地址批注 (14)27、批量插入统一批注 (14)28、以A1单元内容批量插入批注 (15)29、不连续区域插入当前文件名和表名及地址 (15)30、不连续区域录入当前单元地址 (15)31、连续区域录入当前单元地址 (15)32、返回当前单元地址 (16)33、不连续区域录入当前日期 (16)34、不连续区域录入当前数字日期 (16)35、不连续区域录入当前日期和时间 (16)36、不连续区域录入对勾 (16)37、不连续区域录入当前文件名 (16)38、不连续区域添加文本 (16)39、不连续区域插入文本 (17)40、从指定位置向下同时录入多单元指定内容 (17)41、按aa工作表A列的内容排列工作表标签顺序 (17)42、以A1单元文本作表名插入工作表 (17)43、删除全部未选定工作表 (18)44、工作表标签排序 (18)45、定义指定工作表标签颜色 (19)46、在目录表建立本工作簿中各表链接目录 (19)47、建立工作表文本目录 (20)48、查另一文件的全部表名 (20)49、当前单元录入计算机名 (20)50、当前单元录入计算机用户名 (20)51、解除全部工作表保护 (21)52、为指定工作表加指定密码保护表 (21)53、在有密码的工作表执行代码 (21)54、执行前需要验证密码的宏(控件按钮代码) (21)55、执行前需要验证密码的宏() (21)56、拷贝A1公式和格式到A2 (22)57、复制单元数值 (22)58、插入数值条件格式 (22)59、插入透明批注 (22)60、添加文本 (23)61、光标定位到指定工作表A列最后数据行下一单元 (23)62、定位选定单元格式相同的全部单元格 (23)63、按当前单元文本定位 (24)64、按固定文本定位 (24)65、删除包含固定文本单元的行或列 (25)66、定位数据及区域以上的空值 (25)67、右侧单元自动加5(工作表代码) (25)68、当前单元加2 (25)69、A列等于A列减B列 (26)70、用于光标选定多区域跳转指定单元(工作表代码) (26)71、将A1单元录入的数据累加到B1单元(工作表代码) (26)72、在指定颜色区域选择单元时添加/取消"√"(工作表代码)(26)73、在指定区域选择单元时添加/取消"√"(工作表代码) (27)74、双击指定单元,循环录入文本(工作表代码) (27)75、双击指定单元,循环录入文本(工作表代码) (27)76、单元区域引用(工作表代码) (27)77、在指定区域选择单元时数值加1(工作表代码) (28)78、混合文本的编号 (28)79、指定区域单元双击数据累加(工作表代码) (28)80、选择单元区域触发事件(工作表代码) (28)81、当修改指定单元内容时自动执行宏(工作表代码) (28)82、被指定单元内容限制执行宏 (29)83、双击单元隐藏该行(工作表代码) (29)84、高亮显示行(工作表代码) (29)85、高亮显示行和列(工作表代码) (29)86、为指定工作表设置滚动范围(工作簿代码) (29)87、在指定单元记录打印和预览次数(工作簿代码) (29)88、自动数字金额转大写(工作表代码) (30)89、将全部工作表的A1单元作为单击按钮(工作簿代码) (30)90、闹钟——到指定时间执行宏(工作簿代码) (30)91、改变Excel界面标题的宏(工作簿代码) (30)92、在指定工作表的指定单元返回光标当前多选区地址(工作簿代码) (30)93、B列录入数据时在A列返回记录时间(工作表代码) (31)94、当指定区域修改时在其右侧的2个单元返回当前日期和时间(工作表代码) (31)95、指定单元显示光标位置内容(工作表代码) (31)96、每编辑一个单元保存文件 (31)97、指定允许编辑区域 (32)98、解除允许编辑区域限制 (32)99、删除指定行 (32)100、删除A列为指定内容的行 (32)101、删除A列非数字单元行 (32)102、有条件删除当前行 (32)103、选择下一行 (33)104、选择第5行开始所有数据行 (33)105、选择光标或选区所在行 (33)106、选择光标或选区所在列 (33)107、光标定位到名称指定位置 (33)108、选择名称定义的数据区 (34)109、选择到指定列的最后行 (34)110、将Sheet1的A列的非空值写到Sheet2的A列 (34)111、将名称1的数据写到名称2 (34)112、单元反选 (34)113、调整选中对象中的文字 (35)114、去除指定范围内的对象 (35)115、更新透视表数据项 (35)116、将全部工作表名称写到A列 (36)117、为当前选定的多单元插入指定名称 (36)118、删除全部名称 (36)119、以指定区域为表目录补充新表 (36)120、按A列数据批量修改表名称 (37)121、按A列数据批量创建新表(控件按钮代码) (37)122、清除剪贴板 (37)123、批量清除软回车 (37)124、判断指定文件是否已经打开 (38)125、当前文件另存到指定目录 (38)126、另存指定文件名 (38)127、以本工作表名称另存文件到当前目录 (38)128、将本工作表单独另存文件到Excel当前默认目录 (38) 129、以活动工作表名称另存文件到Excel当前默认目录 (38) 130、另存所有工作表为工作簿 (39)131、以指定单元内容为新文件名另存文件 (39)132、以当前日期为新文件名另存文件 (39)133、以当前日期和时间为新文件名另存文件 (39)134、另存本表为TXT文件 (40)135、引用指定位置单元内容为部分文件名另存文件 (40) 136、将A列数据排序到D列 (40)137、将指定范围的数据排列到D列 (40)138、光标所在行上移一行 (41)139、加数据有效限制 (41)140、取消数据有效限制 (42)141、重排窗口 (42)142、按当前单元文本选择打开指定文件单元 (42)143、回车光标向右 (42)144、回车光标向下 (43)145、保护工作表时取消选定锁定单元 (43)146、保存并退出Excel (43)147、隐藏/显示指定列空值行 (43)148、深度隐藏指定工作表 (43)149、隐藏指定工作表 (43)150、隐藏当前工作表 (43)151、返回当前工作表名称 (44)152、获取上一次所进入工作簿的工作表名称 (44)153、按光标选定颜色隐藏本列其他颜色行 (44)154、打开工作簿自动隐藏录入表以外的其他表 (44)155、除最左边工作表外深度隐藏所有表 (45)156、关闭文件时自动隐藏指定工作表(ThisWorkbook) (45)157、打开文件时提示指定工作表是保护状态(ThisWorkbook) (45)158、插入10行 (45)159、全选固定范围内小于0的单元 (45)160、全选选定范围内小于0的单元 (46)161、固定区域单元分类变色 (46)162、A列半角内容变红 (47)163、单元格录入数据时运行宏的代码 (47)164、根据B列最后数据快速合并A列单元格的控件代码 (47)165、在F1单元显示光标位置批注内容的代码 (47)166、显示光标所在单元的批注的代码 (48)167、使单元内容保持不变的工作表代码 (48)168、有条件执行宏 (48)169、有条件执行不同的宏 (48)170、提示确定或取消执行宏 (49)171、提示开始和结束 (49)172、拷贝指定表不相邻多列数据到新位置 (49)173、选择2至4行 (49)174、在当前选区有条件替换数值为文本 (49)175、自动筛选全部显示指定列 (50)176、自动筛选第2列值为A的行 (50)177、取消自动筛选() (50)178、全部显示指定表的自动筛选 (50)179、强行合并单元 (50)180、设置单元区域格式 (50)181、在所有工作表的A1单元返回顺序号 (51)182、根据A1单元内容返回C1数值 (51)183、根据A1内容选择执行宏 (51)184、删除A列空行 (51)185、在A列产生不重复随机数 (52)186、将A列数据随机排列到F列 (52)187、取消选定区域的公式只保留值(假空转真空) (52)188、处理导入的显示为科学计数法样式的身份证号 (53)189、返回指定单元的行高和列宽 (53)190、指定行高和列宽 (53)191、指定单元的行高和列宽与A1单元相同 (53)191、填公式 (53)192、建立当前工作表的副本为001表 (54)193、在第一个表前插入多工作表 (54)194、清除A列再插入序号 (54)195、反方向文本(自定义函数) (54)196、指定选择单元区域弹出消息 (54)197、将B列数据添加超链接到K列 (55)198、删除B列数据的超链接 (55)199、分离临时表A列数据的文本和超链接并整理到数据库表 (55)200、分离临时表A列数据的文本和超链接并会同其他数据整理到数据库表 (55)201、返回A列最后一个非空单元行号 (56)202、返回表中第一个非空单元地址(行搜索) (56)203、返回表中各非空单元区域地址(行搜索) (56)204、返回第一个数值行号 (56)205、返回第1行最右边非空单元的列号 (57)206、返回连续数值单元的数量 (57)207、统计指定范围和内容的单元数量 (57)208、统计不同颜色的数字的和(自定义函数) (57)209、返回非空单元数量 (57)210、返回A列非空单元数量 (58)211、返回圆周率π (58)212、定义指定单元内容为页眉/页脚 (58)213、提示并全部清除当前选择区域 (58)214、全部清除当前选择区域 (58)215、清除指定区域数值 (58)216、对指定工作表执行取消隐藏》打印》隐藏工作表 (59)217、打开文件时执行指定宏(工作簿代码) (59)218、关闭文件时执行指定宏(工作簿代码) (59)219、弹出提示A1单元内容 (59)220、延时15秒执行重排窗口宏 (59)221、撤消工作表保护并取消密码 (60)222、重算指定表 (60)223、将第5行移到窗口的最上面 (60)224、对第一张工作表的指定区域进行排序 (60)225、显示指定工作表的打印预览 (60)226、用单元格A1的内容作为文件名另存当前工作簿 (60)227、[禁用/启用]保存和另存的代码 (60)228、在A和B列返回当前选区的名称和公式 (61)229、朗读朗读A列,按ESC键中止 (61)230、朗读固定语句,请按ESC键终止 (61)231、在M和N列的14行以下选择单元时显示调用日历控件(工作表代码) (62)232、添加自定义序列 (62)233、弹出打印对话框 (62)234、返回总页码 (62)235、合并各工作表内容 (63)236、合并指定目录中所有文件中相同格式工作表的数据 (64)237、隐藏指定工作表的指定列 (64)238、把a列不重复值取到e列 (65)239、当前选区的行列数 (65)240、单元格录入1位字符就跳转(工作表代码) (65)241、当指定日期(每月10日)打开文件执行宏 (65)242、提示并清空单元区域 (66)243、返回光标所在行号 (66)244、按照当前行A列的图片名称插入图片到H列 (66)245、当前行下插入1行 (66)246、取消指定行或列的隐藏 (67)247、复制单元格所在行 (67)248、复制单元格所在列 (67)249、新建一个工作表 (67)250、新建一个工作簿 (67)251、选择多表为工作组 (67)252、在当前工作组各表中分别执行指定宏 (68)253、复制当前工作簿的报表到临时工作簿 (69)254、删除指定文件 (70)255、合并A1至C1的内容写到D15单元的批注中 (70)256、自动重算 (70)257、手动重算 (70)1、打开全部隐藏工作表Sub 打开全部隐藏工作表()Dim i As IntegerFor i = 1 To Sheets.CountSheets(i).Visible = TrueNext iEnd Sub2、循环宏Sub 循环()AAA = Range("C2")Dim i As LongDim times As Longtimes = AAA'times代表循环次数,执行前把times赋值即可(不可小于1,不可大于2147483647) For i = 1 To timesCall 过滤一行If Range("完成标志") = "完成" ThenExit For'如果名为'完成标志'的命名单元的值等于'完成',则退出循环,如果一开始就等于'完成',则只执行一次循环就退出'If Sheets("传送参数").Range("A" & i).Text = "完成" Then Exit For'如果某列出现"完成"内容则退出循环Next iEnd Sub3、录制宏时调用“停止录制”工具栏Sub 录制宏时调用停止录制工具栏()/doc/aa18030293.html,mandBars("Stop Recording").Visible = TrueEnd Sub4、高级筛选5列不重复数据至指定表Sub 高级筛选5列不重复数据至Sheet2()Sheets("Sheet2").Range("A1:E65536") = "" '清除Sheet2的A:D 列Range("A1:E65536").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheet2.Range( _ "A1"), Unique:=True Sheet2.Columns("A:E").Sort Key1:=Sheet2.Range("A2"), Order1:=xlAscending,Header:=xlGuess, _OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _:=xlPinYinEnd Sub5、双击单元执行宏(工作表代码)Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Range("$A$1") = "关闭" Then Exit SubSelect Case Target.AddressCase "$A$4"Call 宏1Cancel = TrueCase "$B$4"Call 宏2Cancel = TrueCase "$C$4"Call 宏3Cancel = TrueCase "$E$4"Call 宏4Cancel = TrueEnd Sub6、双击指定区域单元执行宏(工作表代码)Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Range("$A$1") = "关闭" Then Exit SubIf Not Application.Intersect(Target, Range("A4:A9", "C4:C9")) Is Nothing Then Call 打开隐藏表End Sub7、进入单元执行宏(工作表代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)'以单元格进入代替按钮对象调用宏If Range("$A$1") = "关闭" Then Exit SubSelect Case Target.AddressCase "$A$5" '单元地址(Target.Address),或命名单元名字(/doc/aa18030293.html,)Call 宏1Case "$B$5"Call 宏2Case "$C$5"Call 宏3End SelectEnd Sub8、进入指定区域单元执行宏(工作表代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)If Range("$A$1") = "关闭" Then Exit SubIf Not Application.Intersect(Target, Range("A4:A9","C4:C9")) Is Nothing Then Call 打开隐藏表9、在多个宏中依次循环执行一个(控件按钮代码)Private Sub CommandButton1_Click()Static RunMacro As IntegerSelect Case RunMacroCase 0宏1RunMacro = 1Case 1宏2RunMacro = 2Case 2宏3RunMacro = 0End SelectEnd Sub10、在两个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)Private Sub CommandButton1_Click()With CommandButton1If .Caption = "保护工作表" ThenCall 保护工作表.Caption = "取消工作表保护"Exit SubEnd IfIf .Caption = "取消工作表保护" ThenCall 取消工作表保护.Caption = "保护工作表"Exit SubEnd IfEnd Sub11、在三个宏中依次循环执行一个并相应修改按钮名称(控件按钮代码)Option ExplicitPrivate Sub CommandButton1_Click()With CommandButton1If .Caption = "宏1" ThenCall 宏1.Caption = "宏2"Exit SubEnd IfIf .Caption = "宏2" ThenCall 宏2.Caption = "宏3"Exit SubEnd IfIf .Caption = "宏3" ThenCall 宏3.Caption = "宏1"Exit SubEnd IfEnd WithEnd Sub12、根据A1单元文本隐藏/显示按钮(控件按钮代码)Private Sub Worksheet_SelectionChange(ByVal Target As Range)If Range("A1") > 2 ThenCommandButton1.Visible = 1ElseCommandButton1.Visible = 0End IfEnd SubPrivate Sub CommandButton1_Click()重排窗口End Sub13、当前单元返回按钮名称(控件按钮代码)Private Sub CommandButton1_Click()ActiveCell = CommandButton1.CaptionEnd Sub14、当前单元内容返回到按钮名称(控件按钮代码)Private Sub CommandButton1_Click() CommandButton1.Caption = ActiveCellEnd Sub15、奇偶页分别打印Sub 奇偶页分别打印()Dim i%, Ps%Ps = ExecuteExcel4Macro("GET.DOCUMENT(50)") '总页数MsgBox "现在打印奇数页,按确定开始."For i = 1 To Ps Step 2ActiveSheet.PrintOut from:=i, To:=iNext iMsgBox "现在打印偶数页,按确定开始."For i = 2 To Ps Step 2ActiveSheet.PrintOut from:=i, To:=iNext iEnd Sub16、自动打印多工作表第一页Sub 自动打印多工作表第一页()Dim sh As IntegerDim xDim yDim syDim syzx = InputBox("请输入起始工作表名字:")sy = InputBox("请输入结束工作表名字:")y = Sheets(x).Indexsyz = Sheets(sy).IndexFor sh = y To syzSheets(sh).SelectSheets(sh).PrintOut from:=1, To:=1Next shEnd Sub17、查找A列文本循环插入分页符Sub 循环插入分页符()' Selection = Workbooks("临时表").Sheets("表2").Range("A1") 调用指定地址内容Dim i As LongDim times As Longtimes = Application.WorksheetFunction.CountIf(Sheet1.Range("a:a"), "分页") 'times代表循环次数,执行前把times赋值即可(不可小于1,不可大于2147483647) For i = 1 To timesCall 插入分页符Next iEnd SubSub 插入分页符()Cells.Find(What:="分页", After:=ActiveCell, LookIn:=xlValues, LookAt:= _xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext,MatchCase:=False) _.ActivateActiveWindow.SelectedSheets.HPageBreaks.AddBefore:=ActiveCellEnd SubSub 取消原分页()Cells.SelectActiveSheet.ResetAllPageBreaksEnd Sub18、将A列最后数据行以上的所有B列图片大小调整为所在单元大小Sub 将A列最后数据行以上的所有B列图片大小调整为所在单元大小() Dim Pic As Picture, i&i = [A65536].End(xlUp).RowFor Each Pic In Sheet1.PicturesIf Not Application.Intersect(Pic.TopLeftCell, Range("B1:B" & i)) Is Nothing Then Pic.Top = Pic.TopLeftCell.TopPic.Left = Pic.TopLeftCell.LeftPic.Height = Pic.TopLeftCell.HeightPic.Width = Pic.TopLeftCell.WidthEnd IfNextEnd Sub19、返回光标所在行数Sub 返回光标所在行数()x = ActiveCell.RowRange("A1") = xEnd Sub20、在A1返回当前选中单元格数量Sub 在A1返回当前选中单元格数量()[A1] = Selection.CountEnd Sub21、返回当前工作簿中工作表数量Sub 返回当前工作簿中工作表数量()t = Application.Sheets.CountMsgBox tEnd Sub22、返回光标选择区域的行数和列数Sub 返回光标选择区域的行数和列数()x = Selection.Rows.County = Selection.Columns.CountRange("A1") = xRange("A2") = yEnd Sub23、工作表中包含数据的最大行数Sub 包含数据的最大行数()n = Cells.Find("*", , , , 1, 2).RowMsgBox nEnd Sub24、返回A列数据的最大行数Sub 返回A列数据的最大行数()n = Range("a65536").End(xlUp).RowRange("B1") = nEnd Sub25、将所选区域文本插入新建文本框Sub 将所选区域文本插入新建文本框()For Each rag In Selectionn = n & rag.Value & Chr(10)NextActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, ActiveCell.Left + ActiveCell.Width, ActiveCell.Top + ActiveCell.Height, 250#, 100).SelectSelection.Characters.Text = "问题:" & nWith Selection.Characters(Start:=1, Length:=3).Font.Name = "黑体".FontStyle = "常规".Size = 12End WithEnd Sub26、批量插入地址批注Sub 批量插入地址批注()On Error Resume NextDim r As RangeIf Selection.Cells.Count > 0 ThenFor Each r In Selection/doc/aa18030293.html,ment.Deleter.AddComment/doc/aa18030293.html,ment.Visible = False /doc/aa18030293.html,ment.Text Text:="本单元格:" & r.Address & " of " & Selection.Address Next End IfEnd Sub27、批量插入统一批注Sub 批量插入统一批注()Dim r As Range, msg As Stringmsg = InputBox("请输入欲批量插入的批注", "提示", "随便输点什么吧")If Selection.Cells.Count > 0 ThenFor Each r In Selectionr.AddComment/doc/aa18030293.html,ment.Visible = False /doc/aa18030293.html,ment.TextText:=msgNextEnd IfEnd Sub28、以A1单元内容批量插入批注Sub 以A1单元内容批量插入批注()Dim r As RangeIf Selection.Cells.Count > 0 ThenFor Each r In Selectionr.AddComment/doc/aa18030293.html,ment.Visible = False /doc/aa18030293.html,ment.TextText:=[a1].T extNextEnd IfEnd Sub29、不连续区域插入当前文件名和表名及地址Sub 批量插入当前文件名和表名及地址()For Each mycell In Selectionmycell.FormulaR1C1 = "[" + /doc/aa18030293.html, + "]" + /doc/aa18030293.html, + "!" + mycell.Address NextEnd Sub30、不连续区域录入当前单元地址Sub 区域录入当前单元地址()For Each mycell In Selectionmycell.FormulaR1C1 = mycell.AddressNextEnd Sub31、连续区域录入当前单元地址Sub 连续区域录入当前单元地址()Selection = "=ADDRESS(ROW(),COLUMN(),4,1)"Selection.CopySelection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _:=False, Transpose:=FalseEnd Sub32、返回当前单元地址Sub 返回当前单元地址()d = ActiveCell.Address[A1] = dEnd Sub33、不连续区域录入当前日期Sub 区域录入当前日期()Selection.FormulaR1C1 = Format(Now(), "yyyy-m-d")End Sub34、不连续区域录入当前数字日期Sub 区域录入当前数字日期()Selection.FormulaR1C1 = Format(Now(), "yyyymmdd")End Sub35、不连续区域录入当前日期和时间Sub 区域录入当前日期和时间()Selection.FormulaR1C1 = Format(Now(), "yyyy-m-d h:mm:ss") End Sub36、不连续区域录入对勾Sub 批量录入对勾()Selection.FormulaR1C1 = "√"End Sub37、不连续区域录入当前文件名Sub 批量录入当前文件名()Selection.FormulaR1C1 = /doc/aa18030293.html,End Sub38、不连续区域添加文本Sub 批量添加文本()Dim s As RangeFor Each s In Selections = s & "文本内容"NextEnd Sub39、不连续区域插入文本Sub 批量插入文本()Dim s As RangeFor Each s In Selections = "文本内容" & sNextEnd Sub40、从指定位置向下同时录入多单元指定内容Sub 从指定位置向下同时录入多单元指定内容()Dim arrarr = Array("1", "2", "13", "25", "46", "12", "0", "20")[B2].Resize(8, 1) = Application.WorksheetFunction.Transpose(arr) End Sub41、按aa工作表A列的内容排列工作表标签顺序Sub 按aa工作表A列的内容排列工作表标签顺序()Dim I%, str1$I = 1Sheets("aa").SelectDo While Cells(I, 1).Value <> ""str1 = Trim(Cells(I, 1).Value)Sheets(str1).SelectSheets(str1).Move after:=Sheets(I)I = I + 1Sheets("aa").SelectLoopEnd Sub42、以A1单元文本作表名插入工作表Sub 以A1单元文本作表名插入工作表()Dim nm As Stringnm = [a1]Sheets.Add/doc/aa18030293.html, = nmEnd Sub43、删除全部未选定工作表Sub 删除全部未选定工作表()Dim sht As Worksheet, n As Integer, iFlag As Boolean Dim ShtName() As Stringn = ActiveWindow.SelectedSheets.CountReDim ShtName(1 To n)n = 1For Each sht In ActiveWindow.SelectedSheets ShtName(n) = /doc/aa18030293.html, n = n + 1NextApplication.DisplayAlerts = FalseFor Each sht In SheetsiFlag = FalseFor i = 1 To n - 1If ShtName(i) = /doc/aa18030293.html, TheniFlag = TrueExit ForEnd IfNextIf Not iFlag Then sht.DeleteNextApplication.DisplayAlerts = TrueEnd Sub44、工作表标签排序Sub 工作表标签排序()Dim i As Long, j As Long, nums As Long, msg As Longmsg = MsgBox("工作表按升序排列请选'是[Y]'. " & vbCrLf & vbCrLf & "工作表按降序排列请选'否[N]'", vbYesNoCancel, "工作表排序")If msg = vbCancel Then Exit Subnums = Sheets.CountIf msg = vbYes Then 'Sort ascendingFor i = 1 To numsFor j = i To numsIf UCase(Sheets(j).Name) < UCase(Sheets(i).Name) ThenSheets(j).Move Before:=Sheets(i)End IfNext jNext iElse 'Sort descendingFor i = 1 To numsFor j = i To numsIf UCase(Sheets(j).Name) > UCase(Sheets(i).Name) ThenSheets(j).Move Before:=Sheets(i)End IfNext jNext iEnd IfEnd Sub45、定义指定工作表标签颜色Sub 定义指定工作表标签颜色()Sheets("Sheet1").T ab.ColorIndex = 46End Sub46、在目录表建立本工作簿中各表链接目录Sub 在目录表建立本工作簿中各表链接目录()Dim s%, Rng As RangeOn Error Resume NextSheets("目录").ActivateIf Err = 0 ThenSheets("目录").UsedRange.DeleteElseSheets.Add/doc/aa18030293.html, = "目录"End IfFor i = 1 To Sheets.CountIf Sheets(i).Name <> "目录" Thens = s + 1Set Rng = Sheets("目录").Cells(((s - 1) Mod 20) + 1, (s - 1) \ 20 + 1 + 1)Rng = Format(s, " 0") & ". " & Sheets(i).NameActiveSheet.Hyperlinks.Add Rng, "#" & Sheets(i).Name & "!A1", ScreenTip:=Sheets(i).NameEnd IfNextSheets("目录").Range("b:iv").EntireColumn.ColumnWidth = 20End Sub。

Excel中宏函数VBA常用语

Excel中宏函数VBA常用语

Excel中宏函数 vba常用语句(1)Option Explicit强制对模块内所有变量进行声明Option Private Module标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示Option Compare Text字符串不区分大小写Option Base 1指定数组的第一个下标为 1(2)On Error Resume Next忽略错误继续执行 VBA 代码,避免出现错误消息(3)On Error GoTo ErrorHandler当错误发生时跳转到过程中的某个位置(4)On Error GoTo 0恢复正常的错误提示(5)Application.DisplayAlerts=False在程序执行过程中使出现的警告框不显示(6)Application.ScreenUpdating=False关闭屏幕刷新(7)Application.ScreenUpdating=True打开屏幕刷新(8)Application.Enable.CancelKey=xlDisabled 禁用 Ctrl+Break 中止宏运行的功能(1)Workbooks.Add()创建一个新的工作簿(2)Workbooks("book1.xls").Activate激活名为 book1 的工作簿(3)ThisWorkbook.Save保存工作簿(4)ThisWorkbook.close关闭当前工作簿(5)ActiveWorkbook.Sheets.Count获取活动工作薄中工作表数(6)返回活动工作薄的名称(7)返回当前工作簿名称(8)ThisWorkbook.FullName返回当前工作簿路径和名称(9)ActiveWindow.EnableResize=False禁止调整活动工作簿的大小(10)A pplication.Window.Arrange xlArrangeStyleTiled 将工作簿以平铺方式排列(11)A ctiveWorkbook.WindowState=xlMaximized将当前工作簿最大化(1)edRange.Rows.Count当前工作表中已使用的行数(2)Rows.Count获取工作表的行数(注:考虑向前兼容性)(3)Sheets(Sheet1).Name= "Sum"将 Sheet1 命名为 Sum(4)ThisWorkbook.Sheets.Add Before:=Worksheets(1)添加一个新工作表在第一工作表前(5)ActiveSheet.MoveAfter:=ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count)将当前工作表移至工作表的最后(6)Worksheets(Array("sheet1","sheet2")).Select同时选择工作表 1 和工作表 2(7)Sheets("sheet1").Delete 或 Sheets(1).Delete删除工作表 1(8)ActiveWorkbook.Sheets(i).Name获取工作表 i 的名称(9)ActiveWindow.DisplayGridlines=Not ActiveWindow.DisplayGridlines切换工作表中的网格线显示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮(10)A ctiveWindow.DisplayHeadings=Not ActiveWindow.DisplayHeadings切换工作表中的行列边框显示(11)A edRange.FormatConditions.Delete删除当前工作表中所有的条件格式(12)C ells.Hyperlinks.Delete取消当前工作表所有超链接(13)A ctiveSheet.PageSetup.Orientation=xlLandscape 或ActiveSheet.PageSetup.Orientation=2将页面设置更改为横向(14)A ctiveSheet.PageSetup.RightFooter=ActiveWorkbook.FullName在页面设置的表尾中输入文件路(15)A ctiveSheet.PageSetup.LeftFooter=erName将用户名放置在活动工作表的页脚单元格/单元格区域(1)ActiveCell.CurrentRegion.Select 或Range(ActiveCell.End(xlUp),ActiveCell.End(xlDown)).Select选择当前活动单元格所包含的范围,上下左右无空行(2)Cells.Select选定当前工作表的所有单元格(3)Range("A1").ClearContents清除活动工作表上单元格 A1 中的内容(4)Selection.ClearContents清除选定区域内容(5)Range("A1:D4").Clear彻底清除 A1 至 D4 单元格区域的内容,包括格式(6)Cells.Clear清除工作表中所有单元格的内容(7)ActiveCell.Offset(1,0).Select活动单元格下移一行,同理,可下移一列(8)Range("A1").Offset(ColumnOffset:=1) 或 Range("A1").Offset(,1) 偏移一列(9)Range("A1").Offset(Rowoffset:=-1) 或 Range("A1").Offset(-1) 向上偏移一行(10)R ange("A1").Copy Range("B1")复制单元格 A1,粘贴到单元格 B1 中(11)R ange("A1:D8").Copy Range("F1")将单元格区域复制到单元格 F1 开始的区域中(12)R ange("A1:D8").Cut Range("F1")剪切单元格区域 A1 至 D8,复制到单元格 F1 开始的区域中(13)R ange("A1").CurrentRegion.Copy Sheets("Sheet2").Range("A1")复制包含 A1 的单元格区域到工作表 2 中以 A1 起始的单元格区域中注:CurrentRegion 属性等价于定位命令,由一个矩形单元格块组成,周围是一个或多个空行或列(14)A ctiveWindow.RangeSelection.Value=XX将值 XX 输入到所选单元格区域中(15)A ctiveWindow.RangeSelection.Count活动窗口中选择的单元格数(16)S election.Count当前选中区域的单元格数(17)GetAddress=Replace(Hyperlinkcell.Hyperlinks(1).Address,mailto:,"")返回单元格中超级链接的地址并赋值(18)T extColor=Range("A1").Font.ColorIndex检查单元格 A1 的文本颜色并返回颜色索引(19)R ange("A1").Interior.ColorIndex获取单元格 A1 背景色(20)c ells.count返回当前工作表的单元格数(21)S election.Range("E4").Select激活当前活动单元格下方 3 行,向右 4 列的单元格(22)C ells.Item(5,"C")或C5 Cells.Item(5,3)引单元格 C5(23)R ange("A1").Offset(RowOffset:=4,ColumnOffset:=5) 或Range("A1").Offset(4,5)指定单元格 F5(24)R ange("B3").Resize(RowSize:=11,ColumnSize:=3)或Rnage("B3").Resize(11,3)创建 B3:D13 区域(25)R ange("Data").Resize(,2)将 Data 区域扩充 2 列(26)U nion(Range("Data1"),Range("Data2"))将 Data1 和 Data2 区域连接(27)I ntersect(Range("Data1"),Range("Data2"))返回 Data1 和 Data2 区域的交叉区域(28)R ange("Data").Count单元格区域 Data 中的单元格数(29)R ange("Data").Columns.Count单元格区域 Data 中的列数(30)R ange("Data").Rows.Count单元格区域 Data 中的行数(31)S election.Columns.Count当前选中的单元格区域中的列数(32)S election.Rows.Count当前选中的单元格区域中的行数(33)S election.Areas.Count选中的单元格区域所包含的区域数(34)A edRange.Row获取单元格区域中使用的第一行的行号(35)R ng.Column获取单元格区域 Rng 左上角单元格所在列编号(36)A ctiveSheet.Cells.SpecialCells(xlCellTypeAllFormatConditions)在活动工作表中返回所有符合条件格式设置的区域(37)Range("A1").AutoFilter Field:=3,VisibleDropDown:=False关闭由于执行自动筛选命令产生的第 3 个字段的下拉列表名称(1)Range("A1:C3").Name="computer"命名 A1:C3 区域为 computer(2)Range("D1:E6").Name="Sheet1!book"命名局部变量,即 Sheet1 上区域 D1:E6 为 book(3)Names("computer").Name="robot"将区域 computer 重命名为 robot(4)Names("book").Delete删除名称(5)Names.Add Name:="ContentList",_RefersTo:="=OFFSET(Sheet1!A2,0,0,COUNTA(Sheet2!$A:$A))"动态命名列(6)Names.Add Name:="Company",RefersTo:="CompanyCar"命名字符串 CompanyCar(7)Names.Add Name:="Total",RefersTo:=123456将数字 123456 命名为 Total。

(完整版)excel宏教程

(完整版)excel宏教程

Excel宏教程一、选中单个单元格Range( “单<元格地址> “ ).Select例:Range("C9").Select ‘选中“C9”单元格二、选中多个单元格Range( “单<元格地址>:< 单元格地址>[,< 单元格地址> ⋯⋯] ” ).Select例:Range(“A1:B2”).Select ‘选中“A1”、“A2”、“B1、”“B2”四个连续的单元格Range( “ 12:12 ” ).Sele‘选ct 中第12 行Range( “ B:B ” ).Sele‘c选t 中第B 列Range( “ A1:A2,B7,2:2 ” ).S‘e选le中ct “ A1、”“ A2、”“ B7五”个不连续的单元格和第二行Cells.Select ‘选中当前SHEET 中的所有单元格Rows("< 行地址>:< 行地址>").Select ‘选中整行Columns("< 列地址>:< 列地址>").Select ‘选中整列例:Rows(“2:2”). Select ‘选中第2 行Rows( “ 2:5 ” ). Selec‘选t 中2 到5 行Columns("A:A").Select ‘选中A 列Columns("E:B").Select ‘选中E 到B 列三、设置活动单元格Range("< 单元格地址>").Activate注:设置活动单元格与选中单元格类似,不同之处就是后者在选中指定的单元格之前会将在此前已被选中的单元格取消掉。

前者在设置之前不会取消已选中的单元格,如果此时操作的单元格不是被选中的单元格,这时他实现的功能与选一个单元格相同。

四、给活动的单元格赋值ActiveCell.FormulaR1C1 = < 值>例:Range("A1").SelectActiveCell.FormulaR1C1 = "Name"Range("B1").SelectActiveCell.FormulaR1C1 = "Age"Range("A2:B3").SelectRange("A2").ActivateActiveCell.FormulaR1C1 = " BUG"Range("B2").ActivateActiveCell.FormulaR1C1 = "12"Range("A3").ActivateActiveCell.FormulaR1C1 = "Archer"ActiveCell.FormulaR1C1 = "37"Range("B3").Activate五、得到指定单元格中的值Range("< 单元格地址>").Text六、插入单元格Selection.Insert Shift:=<XlDirection 值>Selection.EntireRow.InsertSelection.EntireColumn.Insert例:Selection.Insert Shift:=xlToRight ‘在当前选中单元格的位置插入单元格并将当前选中的单元格向右移动Selection.Insert Shift:=xlDown ‘在当前选中单元格的位置插入单元格并将当前选中的单元格向下移动Selection.EntireRow.Insert ‘在当前选中单元格的上面插入一行Selection.EntireColumn.Insert ‘在当前选中单元格的左侧插入一列七、设置字体属性1. 设置字体名称和大小 = < 字体名称>Selection.Font.Size = < 字号>例: = " 隶书"Selection.Font.Size = 15Selection.Font.Underline = < XlUnderlineStyle(下划线样式)> ‘下划线2. 设置字体样式Selection.Font.Bold = <True / False> ‘加粗Selection.Font.Italic = <True / False> ‘斜体XlUnderlineStyle(下划线样式):xlUnderlineStyleDouble ‘双下划线xlUnderlineStyleDoubleAccounting ‘会计用双下划线(如果当前单元格中的数据是数字时则下划线的宽度是当前单元格的宽度)xlUnderlineStyleNone 没有下划线xlUnderlineStyleSingle ‘单下划线xlUnderlineStyleSingleAccounting ‘会计用单下划线(如果当前单元格中的数据是数字时则下划线的宽度是当前单元格的宽度)3. 设置字体的颜色Selection.Font.ColorIndex = <0 到56 之间的数字>Selection.Font.Color = <RGB 值>4. 设置字体的特殊效果Selection.Font.Strikethrough = <True / False> ‘删除线Selection.Font.Superscript = <True / False> ‘上标Selection.Font.Subscript = <True / False> ‘下标八、清空选中单元格里的内容Selection.ClearContents例:Range(“A1:A2,B7,2:2 ”).Select ‘选中“A1”、“A2”、“B7”五个不连续的单元格和第二行Selection.ClearContents ‘清空“ A1、”“ A2、”“ B7五”个不连续单元格中的所有内容九、设置选中单元格的边线属性XlBordersIndex(边线):xlEdgeLeft '单元格左边线xlEdgeTop ‘单元格上边线xlEdgeRight ‘单元格右边线xlEdgeBottom ‘单元格下边线‘单元格左上右下斜线xlDiagonalDown‘单元格左上右下斜线xlDiagonalUpxlInsideVertical ‘多个单元格内垂直线xlInsideHorizontal ‘多个单元格内水平线1. 设置边线的类型Selection.Borders(<边线>).LineStyle = <边线类型)> XlLineStyle(XlLineStyle(边线类型):xlLineStyleNone ‘无样式xlContinuous ‘单线xlDash ‘破折号线(间隔线)xlDashDot ‘破折号点线xlDashDotDot ‘破折号点点线xlDot ‘点线xlDouble ‘双横线xlSlantDashDot ‘斜点线2. 设置边线的宽度Selection.Borders(<边线>).Weight = <XlBorderWeight(边线的宽度值)>XlBorderWeight( 宽度值):xlHairline ‘极细xlThin ‘细xlMedium ‘中等xlThick ‘粗3. 设置边线的颜色Selection.Borders(xlEdgeLeft).ColorIndex = <0 到56 之间的数字>Selection.Borders(xlEdgeLeft).Color = <RGB 值>十、删除选中的单元格Selection.Delete <XlDirection 值>Selection.EntireRow.DeleteSelection.EntireColumn.Delete例:Selection.Delete Shift:=xlToLeft ‘删除选中的单元格, 并将已删除单元格所在位置右面的单元格向左移动Selection.Delete Shift:=xlUp ‘删除选中的单元格, 并将已删除单元格所在位置下面的单元格向上移动Selection.EntireRow.Delete ‘删除选中单元格所在的行Selection.EntireColumn.Delete ‘删除选中单元格所在的列十一、设置单元格背景色及图案1. 背景色Selection.Interior.ColorIndex = <0 到56 之间的数字> Selection.Interior.Color = <RGB 值>2. 图案样式Selection.Interior.Pattern = <Constants(Constants(图案样式):xlSolid '实心xlGray75 '75% 灰色xlGray50 '50% 灰色xlGray25 '25%灰色xlGray16'12.5%灰色xlGray8 '6.25% 灰色xlHorizontal '水平条纹xlVertical ' 垂直条纹xlDown ' 逆对角线条纹xlUp '对角线条纹xlChecker ' 对角线剖面线xlSemiGray75 ' 粗对角线剖面线xlLightHorizontal '细水平条纹xlLightVertical ' 细垂直条纹xlLightDown '细逆对角线条纹xlLightUp '细对角线条纹xlGrid ' 细水平剖面线xlCrissCross ' 细对角线剖面线图案样式)>3. 图案颜色Selection.Interior.PatternColorIndex = <0到56 之间的数字>Selection.Interior.PatternColor = <RGB 值>十二、返回工作表中的行数edRange.Rows.Count ‘返回从最小已输入内容的行号到最大已输入内容的行号之间的行数edRange.Rows(edRange.Rows.Count).Row ‘最大已输入内容的行号十三、得到当前EXCEL 的文件名ThisWorkbook.Path ‘文件路径 ‘文件名ThisWorkbook.FullName ‘全路径十四、批注的操作1. 添加批注AddComment([Content])例:Range("A1").AddComment ("Writes the content in here!")2. 修改批注内容Comment.Text例:Range("B1").Comment.Text Text:= "Writes the content in here!"3. 显示/ 隐藏批注Comment.Visible = <True/False>4. 删除批注ClearComments例:Selection.Range("B1").ClearComments5. 选中批注Comment.Shape.Select True例:Range("D8").Comment.Shape.Select True6. 改变批注大小和位置Selection.ShapeRange.ScaleWidth < 宽度比例>, msoFalse, <MsoScaleFrom> Selection.ShapeRange.ScaleHeight < 高度比例>, msoFalse, <MsoScaleFrom>例:Selection.ShapeRange.ScaleWidth 1.5, msoFalse, msoScaleFromTopLeft 5% 的宽度Selection.ShapeRange.ScaleHeight 0.6, msoFalse, msoScaleFromTopLeft 的宽度Selection.ShapeRange.Left = <Selection.ShapeRange.Top = <Selection.ShapeRange.Width = < 宽度值>Selection.ShapeRange.Height = < 高度值>五、剪切、复制、粘贴‘每次增加每次减少6%左边距>上边距>Selection.Cut ‘剪切Selection.Copy ‘复制ActiveSheet.Paste ‘粘贴例:Range("A1").SelectSelection.CutRange("A2").Select ActiveSheet.Paste Selection.CopyRange("A3").Select ActiveSheet.Paste十六、选择性粘贴Selection.PasteSpecial <option>十七、改变列宽Selection.ColumnWidth = < 宽度值> ‘指定列宽例:Columns("A:A").SelectSelection.ColumnWidth = 30 ‘改变已选列的宽度EntireColumn.AutoFit ‘自动改变列宽例:Columns("C:C").EntireColumn.AutoFit‘根据C 列的内容自动改变列的宽度在Excel 97 中," 宏"是一个难以理解的概念,但对于一个具体的"宏"而言,却是容易理解的,如果说"将一块文字变为注释:黑体注释:,字号为注释:三号注释:"就可以看作一个"宏"的话,那么"宏"就不难理解了,其实Excel 97 中的许多操作都可以是一个" 宏"。

EXCEL中的宏使用实例讲解

EXCEL中的宏使用实例讲解

EXCEL中的宏使用实例讲解宏(Macro)是Microsoft Excel中的一项功能,用于自动化繁琐重复的操作。

通过使用宏,用户可以录制一系列的操作步骤,并将其保存为宏代码,然后将来可以单击一个按钮或使用快捷键来执行这些操作步骤。

在本文中,我们将讲解一些常见的Excel宏使用实例。

1.插入当前日期:```vbaSub InsertDateActiveCell.Value = DateEnd Sub```2.运行公式:```vbaSub RunFormulaDim ws As WorksheetFor Each ws In ActiveWorkbook.Worksheetsws.ActivateRange("A1").SelectActiveCell.FormulaR1C1 = "=SUM(R2C2:R6C2)"Next wsEnd Sub```3.清除内容:```vbaSub ClearContentCells.ClearContentsEnd Sub```4.格式化单元格:```vbaSub FormatCellsSelection.Font.Color = RGB(255, 0, 0) ' 设置字体颜色为红色Selection.Font.Bold = True ' 设置文本加粗End Sub```5.合并单元格:```vbaSub MergeCellsSelection.Merge ' 合并单元格With Selection.HorizontalAlignment = xlCenter ' 水平居中.VerticalAlignment = xlCenter ' 垂直居中End WithEnd Sub```这些实例只是Excel宏的冰山一角。

Excel宏可以实现更加复杂的操作,包括读取和写入文件、创建自定义对话框等。

办公高手EXCEL常用宏命令

办公高手EXCEL常用宏命令

办公高手.EXCEL常用宏命令1 设置打开时弹出对话框的命令举例:Sub AUTO_OPEN()"输入打开工作表时要运行的代码或宏"End Bub2 设置关闭时弹出对话框的命令举例:Sub AUTO_CLOSE()"输入关闭工作表时要运行的代码或宏"End Bub3 设置提示框举例:MsgBox prompt:="温馨提示:您要打开的工作表有保护!", Buttons:=vbOKOnly, Title:="谷子提示"i = MsgBox("系统提供不同服务,是否浏览资费信息?", vbYesNoCancel, "谷子提示:")If i = vbYes ThenMsgBox "资费信息:********", , "谷子提示"Else"输入要运行的代码"End If4、提示框内容过长,换行vbNewLine:MsgBox "您本次访问系统的时间是:" & Date & " " & Time & vbNewLine & "系统离到期日还剩余:" _& DateDiff("d", Now, "2010-12-31") & " 天!" & vbNewLine & "是否查阅到期日说明?", vbYesNoCancel, "时间和到期日提示:"5 提示提示系统的日期和时间:MsgBox "系统当前日期和时间:" & Date & " " & Time, , "时间提示"DateDiff("d", Now, "2010-10-31") & " 天!" ‘提示离指定日期的剩余天数6 系统时间判断命令:Sub 判断时间测试()If Date > "2010-05-20" ThenMsgBox "对不起,测试期间已经结束", , "谷子提示"ElseSheets("首页").Select '或其他命令End IfEnd Sub7 禁止保存或另存的命令:Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)MsgBox ("禁止保存")Cancel = True '或thisworkbook.saved=trueEnd Sub8 保护工作表与撤销保护Sheet2.Protect Password:="123456", DrawingObjects:=True, Contents:=True, Scenarios:=True '保护工作表SHEET2Sheet2.Unprotect ("123456") '解除保护9 保护工作簿与撤销保护ActiveWorkbook.Protect Structure:=True, Windows:=False, Password:="123"ActiveWorkbook.Unprotect Password:="123"10 保护全部工作表Sub 保护所有工作表()Dim ws As WorksheetFor Each ws In Worksheetsws.ActivateActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="123"NextEnd Sub11 抽取各表名称Sub 抽取各表名称()Range("a1").Value = n = ThisWorkbook.Sheets.CountRange("a2").Value = nFor i = 1 To nCells(i, 2).Value = Sheets(i).NameNextEnd SubEXCEL2007命令Dim n As Variant '指定变量Dim i As Integer '指定变量Range("a1").Value = n = ThisWorkbook.Sheets.CountRange("a2").Value = nFor i = 1 To nCells(i, 2).Value = Sheets(i).NameNext12、显示/隐藏图表的命令ActiveSheet.ChartObjects("图表 1").Visible = Not ActiveSheet.ChartObjects("图表 1").Visible13、显示/隐藏图片的命令ActiveSheet.Shapes("Image1").Visible = TrueActiveSheet.Shapes("Image1").Visible = FalseActiveSheet.Shapes("Image1").Visible = NotActiveSheet.Shapes("Image1").Visible14 弹出和关闭窗体:UserForm_GOODS.Show 'UserForm_GOODS是窗体名称Unload UserForm_GOODS15 设置登录窗口条件判断口令:If TextBox1.Val ue = "××" And TextBox2.Value = "×××" Then '注:文本框2的显示属性设为密码﹡16 用窗体添加列和输入文本的综合举例:Private Sub CommandButton1_Click()Dim irow As Integerirow = [a65536].End(xlUp).Row + 1Cells(irow, 1) = boBox1.ValueCells(irow, 2) = Me.TextBox1.ValueCells(irow, 3) = Me.TextBox2.ValueboBox1.Value = ""Me.TextBox1.Value = ""Me.TextBox2.Value = ""End Sub17 防止修改工作表名称:Private Sub Worksheet_SelectionChange(ByVal Target As Range)If <> "VBA" Then = "VBA"End Sub18 设计让按钮跟随单元格选择而移动Private Sub Worksheet_SelectionChange(ByVal Target As Range)With mandButton10.Top = Target.Top.Left = Target.Left + Target.WidthEnd WithEnd Sub19 设置用户登陆窗口权限保护举例:Private Sub CommandButton1_Click()If TextBox1.Value = "张三" Or TextBox1.Value = "李四" Or TextBox1.Value = "王五" _Or TextBox1.Value = "赵六" Or TextBox1.Value = "孙七" ThenIf TextBox2.Value = "123456" ThenUnload GOODS_系统登陆窗口Sheets("首页").SelectElseEnd IfEnd Sub20 关闭全部工作表:Application.QuitThisWorkbook.Close savechanges:=False21 关闭当前活动工作表ThisWorkbook.Close savechanges:=False22 显示及隐藏工作表Sheets("首页").Visible = xlSheetVisibleSheets("首页").Visible = xlSheetHidden23 选择单元格:Range("C2").SelectRange("C2,C5").Select24 选择工作表:Sheets("首页").Select25 选择并清空单元格内容:Range("C2,C3").SelectSelection.ClearContents26 设置列宽:Columns("B:B").ColumnWidth = 11.7527 设置行高:Columns("1:1").RowHight = 11.7528 设置单元格比较判断:If Range("B4").Value > Range("C4").Value Then 29 为单元格输入内容:Range("D4").SelectActiveCell.FormulaR1C1 = "危险"30 设置单元格格式"Range(""A1:E1"").SelectWith Selection.Font.Name = ""宋体"".Size = 1431 比较单元格数值:If Range("B4").Value > Range("C4").Value Then32 引用单元格数值及举例Application.Range("D3").Value '提取单元格D3的数值Sheets(Application.Range("D3").Value).Visible = xlSheetVisible '显示以单元格D3的内容为名称的表格33 设置标签从其他工作表的单元格取值Label6.Caption = Sheets("参数设置").Range("G5").Value & " " & " " & Sheets("参数设置").Range("C5")34 从未打开的工作簿中取值:Sub GetValue()[A3] = "='E:\Goods\[VBA.xls]sheet1'!$B$10 "End Sub35 删除空白单元格所在的行:Sub DeleteBalankRows()Range("A2:A10").SpecialCells(xlCellTypeBlanks).EntireRow.DeleteEnd Sub36 让所有表格执行相同命令Sub 循环执行语句()Dim ws As WorksheetFor Each ws In Worksheets ws.Activate命令内容?NextEnd Sub。

Excel常见宏命令详解

Excel常见宏命令详解

Excel常见宏命令详解清除剪贴板Sub 清除剪贴板()Application.CutCopyMode = FalsemandBars("Task Pane").Visible = FalseEnd Sub批量清除软回车Sub 批量清除软回车()'也可直接使用Alt+10或13替换Cells.Replace What:=Chr(10), Replacement:="", LookAt:=xlPart, SearchOrder:= _xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=FalseEnd Sub判断指定文件是否已经打开Sub 判断指定文件是否已经打开()Dim x As IntegerFor x = 1 To Workbooks.CountIf Workbooks(x).Name = "函数.xls" Then '文件名称MsgBox "文件已打开"Exit SubEnd IfNextMsgBox "文件未打开"End Sub当前文件另存到指定目录Sub 当前激活文件另存到指定目录()ActiveWorkbook.SaveAs Filename:="E:\信件\" & 另存指定文件名Sub 另存指定文件名()ActiveWorkbook.SaveAs ThisWorkbook.Path & "\别名.xls"End Sub以本工作表名称另存文件到当前目录Sub 以本工作表名称另存文件到当前目录()ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & & ".xls"End Sub将本工作表单独另存文件到Excel当前默认目录Sub 将本工作表单独另存文件到Excel当前默认目录()ActiveSheet.CopyActiveWorkbook.SaveAs Filename:= & ".xls"End Sub以活动工作表名称另存文件到Excel当前默认目录Sub 以活动工作表名称另存文件到Excel当前默认目录()ActiveWorkbook.SaveAs Filename:= & ".xls", FileFormat:= _xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _, CreateBackup:=FalseEnd Sub另存所有工作表为工作簿Sub 另存所有工作表为工作簿()Dim sht As WorksheetApplication.ScreenUpdating = Falseipath = ThisWorkbook.Path & "\"For Each sht In SheetsActiveWorkbook.SaveAs ipath & & ".xls" '(工作表名称为文件名)'ActiveWorkbook.SaveAs ipath & & Trim(sht.[d15]) & ".xls" '(文件名称 & D15单元内容)'ActiveWorkbook.SaveAs ipath & Trim(sht.[d15]) & ".xls" '(文件名称为D15单元内容)ActiveWorkbook.CloseNextApplication.ScreenUpdating = TrueEnd Sub以指定单元内容为新文件名另存文件Sub 以指定单元内容为新文件名另存文件()ThisWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & Sheet1.[A1]End Sub以当前日期为新文件名另存文件Sub 以当前日期为新文件名另存文件()ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & Format(Now(), "yyyymmdd") & ".xls"End SubSub 以当前日期为名称另存文件()ActiveWorkbook.SaveAs Filename:=Date & ".xls"End Sub以当前日期和时间为新文件名另存文件Sub 以当前日期和时间为新文件名另存文件()ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & Format(Now(), "yyyy" & "年" & "mm" & "月" & "dd" & "日" & "h" & "时" & "mm" & "分" & "ss" & "秒") & ".xls"End Sub另存本表为TXT文件Sub 另存本表为TXT文件()Dim s As StringDim FullName As String, rng As RangeApplication.ScreenUpdating = FalseFullName = ( & ".txt") '以当前表名为TXT 文件名' FullName = Replace(ThisWorkbook.FullName, ".xls", ".txt") '以当前文件名为TXT文件名' FullName = Replace(ThisWorkbook.FullName, ".xls", & ".txt") '以文件名&表名为TXT文件名Open FullName For Output As #1 '以读写方式打开文件,每次写内容都会覆盖原先的内容'参考帮助,fullname为文件全名For Each rng In Range("a1").CurrentRegions = s & IIf(s = "", "", "|") & rng.ValueIf rng.Column = Range("a1").CurrentRegion.Columns.Count ThenPrint #1, s & "|" '把数据写到文本文件里s = ""End IfNextClose #1 '关闭文件Application.ScreenUpdating = TrueMsgBox "数据已导入文本"End Sub引用指定位置单元内容为部分文件名另存文件Sub 引用指定位置单元内容为部分文件名另存文件()ActiveWorkbook.SaveAs Filename:="E:\信件\" & "解答" & Range("sheet1!a1") & "郎雀.xls"将A列数据排序到D列Sub 将A列数据排序到D列()[d:d] = [a:a].Value[d:d].Sort Key1:=Range("D1"), Order1:=xlAscending, Header:=xlYesEnd Sub将指定范围的数据排列到D列Sub 将指定范围的数据排列到D列()Dim arr1, arr2, i%, xarr1 = Range("A1:C3")ReDim arr2(1 To UBound(arr1, 1) * UBound(arr1, 2), 1 To 1) For Each x In Application.Transpose(arr1)i = i + 1arr2(i, 1) = xNext xRange("D1").Resize(i, 1) = arr2End Sub光标移动Sub 光标移动()ActiveCell.Offset(1, 2).Select '向下移动1行,向右移动2列End Sub光标所在行上移一行Sub 光标所在行上移一行()Dim i%i = Split(ActiveCell.Address, "$")(2)If i > 1 ThenRows(i).CutRows(i - 1).Insert Shift:=xlDownEnd If加数据有效限制Sub 加数据有效限制()With Selection.Validation.Delete.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _xlBetween, Formula1:="******************".IgnoreBlank = False.InCellDropdown = False.InputTitle = "".ErrorTitle = "".InputMessage = "".ErrorMessage = "要奋斗就会有牺牲,死人的事是经常发生的。

EXCEL 常用的宏代码大全

EXCEL 常用的宏代码大全

EXCEL 常用的宏代码大全本示例为设置密码窗口(1)If Application.InputBox("请输入密码:") = 1234 Then[A1] = 1 '密码正确时执行Else: MsgBox "密码错误,即将退出!" '此行与第2行共同设置密码End If本示例为设置密码窗口(1)X = MsgBox("是否真的要结帐?", vbYesNo)If X = vbYes ThenClose本示例为设置工作表密码ActiveSheet.Protect Password:=641112 ' 保护工作表并设置密码ActiveSheet.Unprotect Password:=641112 '撤消工作表保护并取消密码'本示例关闭除正在运行本示例的工作簿以外的其他所有工作簿,并保存其更改内容。

For Each w In WorkbooksIf <> Thenw.Close SaveChanges:=TrueEnd IfNext w'每次打开工作簿时,本示例都最大化Microsoft Excel 窗口。

Application.WindowState = xlMaximized'本示例显示活动工作表的名称。

MsgBox "The name of the active sheet is " & '本示例保存当前活动工作簿的副本。

ActiveWorkbook.SaveCopyAs "C:\TEMP\XXXX.XLS"'下述过程激活工作簿中的第四张工作表。

Sheets(4).Activate'下述过程激活工作簿中的第1张工作表。

Worksheets(1).Activate'本示例通过将Saved 属性设为True 来关闭包含本段代码的工作簿,并放弃对该工作簿的任何更改。

EXCEL高级技巧使用宏命令简化操作

EXCEL高级技巧使用宏命令简化操作

EXCEL高级技巧使用宏命令简化操作EXCEL是一款功能强大的电子表格软件,广泛应用于数据处理和分析,因其灵活性和易用性而备受推崇。

然而,对于那些经常处理大量数据和重复性工作的用户来说,繁琐的操作步骤可能是一种挑战。

为了提高工作效率,我们可以利用EXCEL的宏命令来简化操作,本文将介绍一些EXCEL高级技巧,帮助你更好地利用宏命令完成日常工作。

一、什么是宏命令宏命令是一系列在EXCEL中录制的操作步骤的集合。

通过录制宏命令,我们可以将重复性的、繁琐的操作过程自动化。

例如,如果我们需要经常对一列数据进行格式调整,可以录制宏命令,将格式调整的步骤记录下来,之后只需执行该宏命令,便可自动完成格式调整。

二、录制宏命令录制宏命令是使用EXCEL高级技巧的第一步。

下面是一个简单的宏命令录制示例,以展示如何录制一个计算某列数据平均值的宏命令。

1. 打开EXCEL,并在工作表中选择要计算平均值的数据列;2. 点击"开发工具"选项卡中的"宏"按钮,选择"录制新宏";3. 在弹出的对话框中输入宏的名称,并选择可用于快捷键的字母组合;4. 点击"确定"按钮开始录制宏命令;5. 在录制宏命令期间进行计算平均值的操作,如点击"函数"按钮,选择"平均值"函数,并选择要计算平均值的数据范围;6. 完成计算之后,点击"停止录制"按钮。

三、应用宏命令录制宏命令后,我们可以将它应用到其他类似的数据上,以提高操作效率。

1. 选择要应用宏命令的位置;2. 点击"开发工具"选项卡中的"宏"按钮,选择已经录制好的宏命令;3. 点击"运行"按钮,宏命令将自动执行。

四、编辑宏命令有时,我们可能需要编辑已经录制好的宏命令,以满足个性化需求。

EXCEL提供了编辑宏命令的功能。

excel中macro的用法

excel中macro的用法

Excel中的Macro宏是一种自动化工具,可以记录和执行一系列的操作,以便快速完成重复任务。

以下是Excel中宏的用法:
1. 录制宏:打开Excel,在“开发工具”选项卡上,单击“录制宏”按钮。

在弹出的对话框中,输入宏的名称和描述,选择录制的宏类型,单击“录制”按钮开始录制。

完成录制后,单击“停止”按钮,然后保存宏。

2. 运行宏:打开Excel,在“开发工具”选项卡上,单击“宏”按钮。

在弹出的对话框中,选择要运行的宏,然后单击“运行”按钮。

也可以使用快捷键Alt+F8来打开宏窗口。

3. 编辑宏:打开Excel,在“开发工具”选项卡上,单击“宏”按钮。

在弹出的对话框中,选择要编辑的宏,然后单击“编辑”按钮。

在VBA编辑器中,可以修改宏的代码,然后保存并关闭编辑器。

4. 使用相对单元格:在宏代码中使用相对单元格,可以使宏在不同的工作表和单元格中运行。

例如,使用Range("A1")代替绝对引用$A$1,就可以使宏在不同的单元格中运行。

5. 使用条件语句:在宏代码中使用条件语句,可以根据不同的条件执行不同的操作。

例如,使用If...Then...Else语句,可以根据单元格的值执行不同的操作。

6. 使用循环语句:在宏代码中使用循环语句,可以使宏重复执行相同的操作。

例如,使用For Each语句,可以遍历工作表中的所有单元格。

总之,Excel宏可以大大提高工作效率,减少重复操作,但需要一定的VBA编程知识和技能。

excel 宏语句

excel 宏语句

excel 宏语句Excel 宏语句是一种自动化执行特定任务的代码,可以通过录制和编写VBA (Visual Basic for Applications)代码来创建宏。

以下是一些常用的Excel 宏语句示例:1. 定义变量和对象:vbaDim variable As DataTypeSet object = New ObjectType其中,`variable` 是一个变量名,`DataType` 是变量的数据类型。

`object` 是对象的名称,`ObjectType` 是对象的类型。

2. 打开一个工作簿:vbaWorkbooks.Open "路径\文件名.xlsx"其中,"路径\文件名.xlsx" 是要打开的工作簿的完整路径和文件名。

3. 选择一个工作表:vbaWorksheets("工作表名称").Select其中,"工作表名称" 是要选择的工作表的名称。

4. 运行公式或函数:vbaRange("A1").Formula = "=SUM(A2:A10)"该语句将在单元格A1 中输入“=SUM(A2:A10)”,执行求和操作。

5. 循环操作:vbaFor i = 1 to 10'执行操作Next i上述代码将会循环执行代码块中的操作,i 的值从1 递增到10。

6. 条件判断:vbaIf condition Then'满足条件时执行的操作ElseIf condition Then'满足其他条件时执行的操作Else'以上条件都不满足时执行的操作End If根据条件的不同,执行不同的操作。

以上只是一些常见的示例,根据具体的任务需求,还可以使用其他Excel 宏语句来执行更复杂的操作。

表格中宏的用法

表格中宏的用法

技术报告:宏在Excel中的用法
一、引言
在Excel中,宏是一种强大的自动化工具,可以极大地提高数据处理和报表生成的工作效率。

通过宏,用户可以创建一系列自动执行的命令,以实现数据筛选、格式设置、计算、数据导入导出等操作。

本文将详细介绍Excel中宏的用法,帮助用户更好地理解和掌握这一功能。

二、宏的创建与录制
1.打开Excel,按下Alt + F11键,打开VBA编辑器。

2.在VBA编辑器中,选择“插入”菜单,然后选择“模块”,创建一个新的模块。

3.在新模块中,输入宏的名称,例如“MyMacro”。

4.点击工具栏上的“录制新宏”按钮,开始录制宏。

5.在Excel中执行所需的操作,例如筛选数据、设置格式等。

6.完成操作后,再次点击“录制新宏”按钮停止录制。

三、宏的编辑与修改
1.在VBA编辑器中,打开刚刚录制的宏(MyMacro)。

2.可以看到宏中包含了所有的操作步骤。

可以根据需要进行修改或添加新的步骤。

3.修改完成后,点击工具栏上的“运行子/用户窗体”按钮,测试宏的功能。

4.根据测试结果,对宏进行必要的调整。

四、宏的执行与运行
1.在Excel中,按下Alt + F8键,打开宏对话框。

2.在宏对话框中,选择要运行的宏(MyMacro)。

3.点击“运行”按钮,执行宏。

4.宏将自动执行在录制过程中所记录的所有操作。

五、注意事项与安全问题
1.在使用宏时,应确保计算机处于安全的环境中,避免执行来自不可信来源的宏。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

办公高手.EXCEL常用宏命令1 设置打开时弹出对话框的命令举例:Sub AUTO_OPEN()"输入打开工作表时要运行的代码或宏"End Bub2 设置关闭时弹出对话框的命令举例:Sub AUTO_CLOSE()"输入关闭工作表时要运行的代码或宏"End Bub3 设置提示框举例:MsgBox prompt:="温馨提示:您要打开的工作表有保护!", Buttons:=vbOKOnly, Title:="谷子提示"i = MsgBox("系统提供不同服务,是否浏览资费信息?", vbYesNoCancel, "谷子提示:")If i = vbYes ThenMsgBox "资费信息:********", , "谷子提示"Else"输入要运行的代码"End If4、提示框内容过长,换行vbNewLine:MsgBox "您本次访问系统的时间是:" & Date & " " & Time & vbNewLine & "系统离到期日还剩余:" _& DateDiff("d", Now, "2010-12-31") & " 天!" & vbNewLine & "是否查阅到期日说明?", vbYesNoCancel, "时间和到期日提示:"5 提示提示系统的日期和时间: MsgBox "系统当前日期和时间:" & Date & " " & Time, , "时间提示"DateDiff("d", Now, "2010-10-31") & "天!" ‘提示离指定日期的剩余天数6 系统时间判断命令:Sub 判断时间测试()If Date > "2010-05-20" ThenMsgBox "对不起,测试期间已经结束", , "谷子提示"ElseSheets("首页").Select '或其他命令End IfEnd Sub7 禁止保存或另存的命令:Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)MsgBox ("禁止保存")Cancel = True '或thisworkbook.saved=trueEnd Sub8 保护工作表与撤销保护Sheet2.Protect Password:="123456", DrawingObjects:=True, Contents:=True, Scenarios:=True '保护工作表SHEET2Sheet2.Unprotect ("123456") '解除保护9 保护工作簿与撤销保护ActiveWorkbook.Protect Structure:=True, Windows:=False, Password:="123"ActiveWorkbook.Unprotect Password:="123"10 保护全部工作表Sub 保护所有工作表()Dim ws As WorksheetFor Each ws In Worksheetsws.ActivateActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="123"NextEnd Sub11 抽取各表名称Sub 抽取各表名称()Range("a1").Value = n = ThisWorkbook.Sheets.CountRange("a2").Value = nFor i = 1 To nCells(i, 2).Value = Sheets(i).NameNextEnd SubEXCEL2007命令Dim n As Variant '指定变量Dim i As Integer '指定变量Range("a1").Value = n = ThisWorkbook.Sheets.CountRange("a2").Value = n For i = 1 To nCells(i, 2).Value = Sheets(i).NameNext12、显示/隐藏图表的命令ActiveSheet.ChartObjects("图表 1").Visible = Not ActiveSheet.ChartObjects("图表1").Visible13、显示/隐藏图片的命令ActiveSheet.Shapes("Image1").Visible = True ActiveSheet.Shapes("Image1").Visible = FalseActiveSheet.Shapes("Image1").Visible = Not ActiveSheet.Shapes("Image1").Visible14 弹出和关闭窗体:UserForm_GOODS.Show 'UserForm_GOODS是窗体名称Unload UserForm_GOODS15 设置登录窗口条件判断口令:If TextBox1.Val ue = "××" And TextBox2.Value = "×××" Then '注:文本框2的显示属性设为密码﹡16 用窗体添加列和输入文本的综合举例:Private Sub CommandButton1_Click()Dim irow As Integerirow = [a65536].End(xlUp).Row + 1Cells(irow, 1) = boBox1.ValueCells(irow, 2) = Me.TextBox1.ValueCells(irow, 3) = Me.TextBox2.ValueboBox1.Value = ""Me.TextBox1.Value = ""Me.TextBox2.Value = ""End Sub17 防止修改工作表名称:Private Sub Worksheet_SelectionChange(ByVal Target As Range)If <> "VBA" Then = "VBA"End Sub18 设计让按钮跟随单元格选择而移动Private Sub Worksheet_SelectionChange(ByVal Target As Range)With mandButton10.Top = Target.Top.Left = Target.Left + Target.WidthEnd WithEnd Sub19 设置用户登陆窗口权限保护举例:Private Sub CommandButton1_Click()If TextBox1.Value = "张三" Or TextBox1.Value = "李四" Or TextBox1.Value = "王五" _Or TextBox1.Value = "赵六" OrTextBox1.Value = "孙七" ThenIf TextBox2.Value = "123456" ThenUnload GOODS_系统登陆窗口Sheets("首页").SelectElseEnd If End Sub20 关闭全部工作表:Application.QuitThisWorkbook.Close savechanges:=False21 关闭当前活动工作表ThisWorkbook.Close savechanges:=False22 显示及隐藏工作表Sheets("首页").Visible = xlSheetVisibleSheets("首页").Visible =xlSheetHidden23 选择单元格:Range("C2").SelectRange("C2,C5").Select24 选择工作表:Sheets("首页").Select25 选择并清空单元格内容:Range("C2,C3").SelectSelection.ClearContents26 设置列宽:Columns("B:B").ColumnWidth = 11.7527 设置行高:Columns("1:1").RowHight = 11.7528 设置单元格比较判断:If Range("B4").Value > Range("C4").Value Then29 为单元格输入内容:Range("D4").SelectActiveCell.FormulaR1C1 = "危险"30 设置单元格格式"Range(""A1:E1"").SelectWith Selection.Font.Name = ""宋体"".Size = 1431 比较单元格数值:If Range("B4").Value > Range("C4").Value Then32 引用单元格数值及举例Application.Range("D3").Value '提取单元格D3的数值Sheets(Application.Range("D3").Value).Visib le = xlSheetVisible '显示以单元格D3的内容为名称的表格33 设置标签从其他工作表的单元格取值Label6.Caption = Sheets("参数设置").Range("G5").Value & " " & " " & Sheets("参数设置").Range("C5")34 从未打开的工作簿中取值:Sub GetValue()[A3] = "='E:\Goods\[VBA.xls]sheet1'!$B$10 "End Sub35 删除空白单元格所在的行:Sub DeleteBalankRows()Range("A2:A10").SpecialCells(xlCellTypeBlan ks).EntireRow.DeleteEnd Sub 36 让所有表格执行相同命令Sub 循环执行语句()Dim ws As WorksheetFor Each ws In Worksheets ws.Activate命令内容?NextEnd Sub。

相关文档
最新文档