- ?
什么是宏?新人入门必须要了解这6个宏的使用场景
阮若剑
展开
在日常的工作中,数据处理的时候有大一部分是一些常规和繁琐的操作,这个时候我们经常会想到如何去简化我们这些操作,这就需要我们运用到Excel内置的宏功能,他可以帮我们以最快的速度来处理我们日常最简单和繁琐的工作。下面我们就来学习一下新手入门必须要了解的几个常见。
一、什么是宏?
我们先来看一下什么是Excel中的宏?
假设我们的Excel有一个任务:在C列值的基础上加上B列的值。
选取B列并复制选取C列右键 - 选择性粘贴 - 加
就这样这么一个简单重复的工作,如下图:
如上,你在Excel中进行的一系列的操作过程,就是一个宏。操作过程(宏)可以是一步也可以是若干步,使用一个Excel命令或多个Excel命令。
宏,我们也可以看成是一个个可以完成特定目标的功能
二、为什么学习宏?
Excel提供了很多功能,可以完成各种操作。筛选数据有自动筛选和高级筛选,汇总数据有分类汇总、数据透视表等.......
但....还是有Excel无能为力的时候。比如:
批量取消工作表隐藏批量合作多个工作表或Excel文件批量......
有办法。就是Excel中没有的功能,我们自已添加,也就是我们自已编写可以完成指定功能的宏。就象Excel内置功能一样,可以供我们随时使用。
三、怎么编写宏
有一种语言,它的名称叫VBA(visual baisic for application),它是Excel所支持的开发语言,也就是说,我们可以用VBA语言来编写我们需要的功能(宏),除此之外,我们还可以用VBA来编写Excel函数。
四、在哪编写宏
有一个窗口,都叫它VBE编辑器。你可以在工作表标签上右键菜单中点击”查看代码“,就可以打开它。更多的是我们通过”开发工具“选项卡打开这个界面。
需要什么功能,就可以编写什么功能,需要什么函数,就可以编写什么函数,工作中再也没有我们完不成的任务。
五、新手入门必须要了解的6个宏的使用场景
1、禁止插入工作表
Private Sub Workbook_NewSheet(ByVal Sh As Object)
MsgBox "本工作簿禁止插入新工作表"
Application.DisplayAlerts = False
Sh.Delete
Application.DisplayAlerts = True
End Sub
2、禁止打开Excel文件
Private Sub Workbook_BeforePrint(Cancel As Boolean)
MsgBox "此excel文件禁止打印,如需打印请与管理员联系"
Cancel = True
End Sub
3、在VBA中调用Vlookup和Sumif函数
Sub 调用1()
Dim arr, arr1
arr = Range("a2:d6")
arr1 = Application.VLookup(Array("B", "C"), arr, 4, 0)
End Sub
Sub 调用2()
Dim T
T = Timer
Dim arr
arr = Application.SumIf(Range("a2:a10000"), Array("B", "C", "G", "R"), Range("B2:B10000"))
MsgBox Timer - T
Stop
End Sub
4、批量取消工作表隐藏
Sub 取消隐藏()
For x = 1 To Sheets.Count
If Sheets(x).Name <> "总表" Then
Sheets(x).Visible = -1
End If
Next x
End Sub
Sub 隐藏()
For x = 1 To Sheets.Count
If Sheets(x).Name <> "总表" Then
Sheets(x).Visible = 0
End If
Next x
End Sub
5、拆分表格成单独的Excel文件
Sub 拆分表格()
Dim x As Integer
Dim wb As Workbook
Application.ScreenUpdating = False
For x = 2 To 32
Sheets(x).Copy
Set wb = ActiveWorkbook
With wb
.SaveAs ThisWorkbook.Path & "/3月/" & Sheets(x).Name & ".xlsx"
.Close True
End With
Next x
Application.ScreenUpdating = True
End Sub
6、合并多个Excel文件到一个Excel中
Sub 合并表格()
Dim mypath As String
Dim f As String
Dim ribao As Workbook
Application.ScreenUpdating = False
mypath = ThisWorkbook.Path & "/3月/"
f = Dir(ThisWorkbook.Path & "/3月/*.xlsx")
Do
Workbooks.Open (mypath & f)
With ActiveWorkbook
.Sheets(1).Move after:=ThisWorkbook.Sheets(Sheets.Count)
End With
f = Dir
Loop Until Len(f) = 0
Application.ScreenUpdating = True
End Su
根据上面的不同场景,我们可以在代码编辑窗口输入后可以实现我们特定的功能。所以说学会宏的功能和操作,我们可以更加简单的来处理我们的日常工作内容。
原创声明:文章发布于作者逆风头条号、百家号:Excel函数与VBA实例,赶快学习吧
- ?
Excel中的VBA代码你可以写出来,可是你真的会优化代码吗?
平静
展开
我们很多时候在用Excel VBA去实现某一个功能的时候,也许会用到很多行的代码去实现我们最终要的结果。
可是有时候你殊不知,有些代码是经过录制宏产生的,或者语句繁琐,变量不正确从而造成你所写的程序运行的时间非常久,或者造成计算机的CPU使用率达到100%,严重可导致系统崩溃发生。
但是这样的结果显而易见,并不是我们想要的结果。我们想要的是一个可靠的,高效率的,简化操作的,提高劳工效率,减少错误率的,适应性强的程序。
所以我们不得不寻求更好的方法去改善,去优化代码,以寻求高效率完成我们的工作。
下面我们重点和大家分享一下,怎么去优化我们的代码:
1.关闭屏幕刷新,速度可以提升30%的速度。所以大家在写完代码的时候,不妨在我们程序最开始加上这句话,当然在程序执行完之前,也就是最后一句话的时候,你要记得将屏幕刷新打开。
Sub test()
Application.DisplayAlerts = False
Cells(1, 1) = 1
Application.DisplayAlerts = True
End Sub
2. 使用工作表函数,这句话的意思就是说我们某些时候,可以优先考虑Excel自带的函数去实现这个,而不是我们自己去写代码。当然效果都是一样的,但是时间可能就不是一样。
Sub ShtFunctions()
a.使用循环进行数据累加计算
For i = 1 To 40000
MySum = MySum + Cells(i, 1)
Next
b.直接使用工作表进行求和
Cells(1, 1) = Application.Sum(Range("A1:A40000"))
End Sub
3. 使用With-End With语句,减少引用对象的寻找速度,提高程序的效率。当然这样还有一个优点,就是我们要改变引用对象的时候,只需改变一个位置即可,这样也便于后期的维护和修改。
Sub test()
With Range("E5").Font
.Color = -16776961
.Font.Bold = True
.Name = "宋体"
.Size = 9
.Name = "Arial Unicode MS"
.Size = 9
End With
End Sub
4.数据类型的正确选用,这个也是非常关键的。这个就好像你去打水喝,正确的应该是拿杯子过去,但是你拿着一个很大的桶去接水喝,当然都可以完成喝水这个动作,但是明显就可以看出拿桶的那个人选择就有问题。其实在我的Excel中处理数据的能力也是不一样的,处理速度最快的是long>integer>byte>Single>Double>Currency。需要注意的是,如果我们不定义变量,那么系统默认为Variant类型,当我定义合适,速度就会有提升,所以每次我们千万记得要选择最合适自己的啦!
5.使用数组,数组和字典是VBA的核心功能,所有在可以使用数组的时候,千万记得使用数组。在某些时候,在使用数组和不使用数组对比下,速度可能相差100倍。尽量减少变量的使用,增加数组和字典的配套使用。还有就是多使用动态的数据,少使用静态的数据,数组的Redim和Preserve要常记得。
6.多清除对象的缓存,比如 Set d = Nothing,这句话的意思就是卸除对象的引用。这样也可以稍微加快一点执行的速度。另外我们可以通过减少循环的次数,减少类模块的使用,减少模块的使用,减少我们语句中的激活的次数,或者寻找更优质效率更高的代码。
以上就是自己在学习VBA的时候,自己的一点点优化代码的一点点方法,可能还有其他的更好的优化只能慢慢去了解去学习,慢慢积累。虽然Excel VBA并不万能的,但是能帮助我们提高工作效率,就已经足够让你我欣慰。与君共勉之!
PS:学习的苦难需要我们主动面对,生活的苦难你躺着它自己主动就过来啦!与君共勉!!!
以上就是今天要和大家分享的技巧,希望对大家有所帮助,祝各位一天好心情!
唯有不断学习,才能不被淘汰!
Excel中每一个方法都有特定的用途,不是他们没有用处,只是你不了解或者暂时用不着,建议你收藏起来,万一哪天用着呢?
- ?
研究人员发现利用Excel宏可发起跳板攻击
堪三德
展开
E安全9月13日讯 SpecterOps公司的研究人员Matt Nelson(马特·尼尔森)研究是否可以通过Microsoft Excel发起跳板攻击(Pivoting)。结果,Nelson发现默认的启动与访问权限存在漏洞,意味着基于宏的攻击无需与受害者交互。
跳板攻击(Pivoting)
如果攻击者成功入侵了一台主机,他就可以任意地利用这台机器作为跳板攻击网络中的其他系统。
Nelson发现未设置明确的启动或访问权限的Excel.Application控件会被DCOM组件暴露。因此攻击者能通过其它方式实施初始攻击,同时Microsoft Office宏安全机制无法阻止这类跳板攻击,这时Excel.Application能被远程启动,从而达到攻击者攻击的目的。
简单来说,DCOM默认管理权限允许用户远程启动后,通过Excel.Application组件接口发起远程链接,之后插入恶意的宏就可以发起攻击。
这就意味着远程攻击者可以执行包含恶意宏的Excel电子表格。由于VBA允许Win32 API访问,可能会出现无穷无尽的Shellcode Runner。
这只是PoC,Nelson并未执行任何恶意操作,他仅仅启动了calc.exe。Nelson表示,这非常简单,只需创建一个新的宏,随意命名,并添加至代码保存。在这起实例中,Nelson将宏命名为“MyMacro”,并以.xls格式保存文件。
Nelson演示中使用的计算器Shellcode生成Excel子进程,但Nelson指出,由于VBA提供大量与操作系统之间的交互,可能不会生成子进程,而是注入到另一个进程。
Nelson补充称,最后的步骤是远程清除Excel对象,并将Payload从目标主机上删除。
虽然这种攻击受限于拥有本地管理员组权限的用户,但这种攻击媒介相当严重。毕竟,在这个攻击中,Nelson假设本地管理员组中的一台设备已经被黑。
缓解措施
Nelson表示缓解措施是存在的,但这些措施可能会比较麻烦。系统管理员可以手动设置Excel.Application的远程启动和访问权限,但这可能会影响其它Office应用。
Nelson提出的其它缓解措施包括:使用dcomccnfg.exe修改启动与访问自主访问控制列表(简称DACL),开启Windows 防火墙,并限制本地管理员的数量。文章来源: E安全
- ?
在excel中怎么设置宏来完成重复批量的工作的
任风雨
展开
说到「宏」,使用 Excel 有一段时间的人,估计至少听说过几次。我们对「宏」的了解包括提高效率、批量操作、无需编程基础等等。那么,「宏」是否能提高工作效率、是否容易掌握,接下来我们一探究竟。
那么什么是 Excel 宏?
简单来说,Excel 宏指的是,使用 Excel 内置的编程语言 VBA (Visual Basic for Applications)写的,能在 Excel 环境里运行的一系列操作指令。我们在 Excel 里手动进行的几乎所有操作,宏(VBA)也都可以操作。我们可以简单的认为宏就是VBA。
这里我们可能疑惑,我自己可以进行的操作,为什么还需要宏呢?因为,宏具有两个诱人的特性:
1. 宏可以帮你自动完成重复、批量的任务。
2. 录制宏不需要其他技术,你只需把任务「演示」给 Excel 即可。
下面我们就一起来看一下宏的使用:
开启「开发工具」
录制和管理宏,需要使用「开发工具」选项卡。默认情况下,Excel 不显示此选项卡,需要自定义开启。
开启步骤如下:
第一步:在功能区任意一区域点击右键,弹出的菜单中选择「自定义功能区」。
第二步:在右侧选项卡列表中,找到「开发工具」并勾选。
第三步:点击确定,这时在功能区可以看到「开发工具」了。
设置宏安全性
接下来是设置宏安全性。默认情况下,为防止来源不明的工作簿自带宏自动运行,Excel 会禁用宏的运行。
为了运行自己录制的宏,按如下步骤设置宏安全性。先点击开发工具选项卡里,「宏安全性」命令。在弹出的设置菜单中,按如下方式设置。
工作簿设置正确的文件类型
Excel 2007 及以后的版本中,工作簿中想要保存和运行宏,必须将其另存为「启用宏的工作簿」文件类型。
按一下步骤另存为启用宏的工作簿:点击「文件」命令,菜单中选择「另存为」,在弹出的另存为菜单中,保存类型列表中选择「Excel 启用宏的工作簿」,点击保存。
录制你的第一个宏
前期工作已经完成,接下来可以录制你的第一个宏了。这里说明一下,同一个电脑,开启开发工具和设置宏安全性只需一次设置,以后无需再重新设置了。
接下来一步一步,我们录制一个规范日期格式的宏,即,将「2018.1.1」格式日期,使用Excel 替换功能,转换成「2018-1-1」标准格式日期。
第一步:在开发工具选项卡→代码命令组中,点击「使用相对引用」。
第二步:接上一步,先选中数据区域,再点击「录制宏」按钮。
第三步:在弹出的对话框中,输入宏名,指定快捷键,选择保存在「当前工作簿」,填写说明。点击「确定」开始录制。快捷键我们设置为「Ctrl + Shift + Q」。
第四步:这一步我们按正常操作,使用替换功能,将「.」替换为「-」。注意,这个步骤,不要使用鼠标重新选择数据区域。
第五步:点击功能区「停止录制」按钮,停止录制。到这一步,就完成了录制。
运行录制的宏
上一步中,我们给宏「规范日期」设置了「Ctrl + Shift + Q」快捷键。现在,选中你要转换的区域,按对应快捷键即可。对,就是这么简单。
管理已录制的宏
对已经录制的宏,使用宏管理菜单,对其进行编辑、删除、执行等操作。点击开发工具选项卡→宏命令,即可打开宏管理菜单。
总结:
今天这篇文章,先简单介绍了Excel 中宏的概念。宏具有两个特性,一个是自动批量执行重复操作;一个是,操作简单,容易学会。如果你不想学习背后的 VBA 知识,也可以正常使用宏,提高你的工作效率。
然后,介绍了录制宏前的准备工作:开启开发工具选项卡,设置宏安全性,设置合适的文件类型。最后,一步一步演示了录制宏的基本操作,成功录制了「规范日期」宏。
以后,懒人Excel 将继续介绍 Excel 宏和 VBA 相关的知识和技巧,也会分享一些实用的宏,帮助你提高工作效率。
- ?
excel函数应用:宏表函数如此简单快捷
俏宝宝
展开
最近收到在某快递上班的周同学问题求助,主要是在计算包裹的体积时遇到了些麻烦事。
下表是周同学近期整理的快递包裹尺寸数据,其中重要一项工作就是通过长*宽*高来计算出包裹的体积。
周同学表示其实自己也能做出来,只不过是方法比较笨拙原始。
一、分列数据计算体积
周同学自己使用的方式是分列,由于长宽高 3个数字均由星号隔开,所以使用分列的方式将数字分别放置在三个单元格中即可完成计算体积。
操作步骤
1、选中G列数据后单击【数据】选项卡中的【分列】
2、出现分列向导对话框,我们一共需要3步完成数据分列。第一步是选择分列的方式:【分隔符号】、【固定宽度】,周同学的表中有星号分隔数据,可以使用分隔符号分列,所以我们选择【分隔符号】后单击【确定】。
注:【分隔符号】方式分列主要运用于有明显字符隔开的情况,【固定宽度】主要运用于无字符隔开或者无明显规律的情况手工设置分列字符的宽度。
3、单击【下一步】进入文本分列向导第二步,在这里我们可以选择分隔符号,可以是TAB键、分号、逗号、空格、其他自定义。由于默认选项中没有星号,所以我们勾选其他,然后输入星号即可。
当输入完成后,下方数据预览可以看到数据中的星号字符变成了竖线,已经完成了分列。
4、单击【下一步】,列数据格式为常规,直接单击【完成】即可。
此时出现提示:此处已有数据。是否替换它?
由于分列前G列内容包含长宽高尺寸数据,分列后,G列被替换成“长”。
直接单击【确定】,可看到分列结果。
5、根据长宽高轻松计算出包裹体积。
周同学觉得这样还不是最好的方案,因为表格列数是固定的,而且数据都已经和其他表格相互关联,分列数据后插入了2个新列,那数据岂不是都乱了吗?
二、提取数字计算体积
我们来试试用文本函数来解决。(前方高能,这里只需要了解一下就可以了,主要是为了突出第三种方式的简单)
既然我们要计算包裹的体积,那么我们只需要将G列中的长宽高数据分别提取出来然后相乘即可。
提取长度数据:
函数公式:
=LEFT(G2,FIND("*",G2,1)-1)
提取宽度数据:
函数公式:
=MID(G2,FIND("*",G2,1)+1,FIND("-",SUBSTITUTE(G2,"*","-",2))-1-FIND("*",G2,1))
提取高度数据:
函数公式:
=RIGHT(G2,LEN(G2)-FIND("-",SUBSTITUTE(G2,"*","-",2),1))
最后我们将3个函数公式合并嵌套统计得出包裹的体积。
好了,我知道上方的函数公式太复杂,大家都不想学,所以也没给大家做过多的函数解析,简单粗暴,下面给大家隆重推荐一个最简单的方法:宏表函数。
三、EVALUATE函数计算体积
首先我们了解一下EVALUATE的含义,其实EVALUATE是宏表函数,宏表函数又称为Excel4.0版函数,需要通过定义名称(并启用宏)或在宏表中使用,其中多数函数功能已逐步被内置函数和VBA功能所替代,但是你一分钟学不会VBA,却可以学会宏表函数。
下面我们开始操作演示:
1、选中G列,单击【公式】选项中的【名称管理器】
弹出如下所示对话框:
2、单击【新建】,在【新建名称】对话框中输入名称为TJ,应用位置输入函数公式
=EVALUATE(Sheet1!$G$2:$G$44)/1000/1000( 备注:由于之前单位是厘米,我要将统计结果转化为立方米,所以需要除1000000)后单击【确定】。最后关闭名称管理器。
公式解析:
由于G列数据是长*宽*高,*在excel中就是乘法的意思,G列的数据本身就可以看作一个公式,我们只需要得到这个公式结果就可以啦,而EVALUATE的功能就是得到单元格内公式的值,所以在上图中,大家会发现,EVALUATE函数中的参数就只有一个数据区域。
3、见证奇迹的时刻到了。在H2单元格中输入TJ两个字母就能快速得到体积信息啦!
这种即简单又快捷还不用辅助列的方式是不是很棒!简直是3全其美!周同学的问题终于有了完美的解决方案。
说真的,大家有没有发现宏表函数在解决很多问题的时候都非常简单快捷?这篇文章只是一个引子,下次文章将给大家专门介绍宏表函数!
****部落窝教育-excel宏表函数****
原创:龚春光/部落窝教育(未经同意,请勿转载)
- ?
如何保存含宏指令(VBA代码)的Excel工作簿
雷雷
展开
宏指的是一段操作指令,它也属于VBA的一种。通常情况下,在使用Excel处理数据时,如果碰到需要进行较多的重复性操作,可以通过录制宏命令来,将这些操作指令记录下来,然后让Excel傻瓜式的运行这些指令,即可实现化繁为简,在提高工作效率的同时还能保证质量的稳定,这就是为啥有些人在处理重复性操作时,是那么的得心应手,而有的人却是那么举步维艰,叫苦连天。除此之外,Excel还赋予了使用者极大的操作灵活性,使用者可以自己编辑VBA代码,实现一些Excel本身常规操作无法实现的功能,如拼图游戏等。当需要的代码指令已经录制好或编辑好之后,又该如何将它们保存下来以便下次操作使用呢?本教程将介绍几种方法帮你轻松搞定这一点。
用最小的代价得到最好的东西1、对于一些仅含简单录制宏指令的Excel电子表格,可以直接单击Excel快速访问工具栏中的保存命令(保存命令快捷键为Ctrl+S)进行保存,此时的Excel工作簿的后缀名为xlsx。
保存含宏指令技巧2、可以将含有宏指令的工作表另存为启用宏的Excel工作簿,具体操作是单击Excel界面菜单栏中的文件命令,然后找到另存为下的启用宏的Excel工作簿命令,单击该命令,设置保存路径即可实现宏指令的保存,此时文件的后缀名为xlsm。此方法保存的文件适用于不低于保存版本的Excel软件。
复杂事情轻松应对3、考虑到Excel向下兼容的特性,如果想让宏代码文件通用于Excel各个版本,建议将含宏指令的工作簿保存成低版本,即Excel97-2003工作簿。具体操作是,单击另存为下的Excel 97-2003命令,然后选择保存路径即可,该方法保存的文件后缀名为xls。
保存宏指令文件的后缀名差异 - ?
Win10系统下启用Excel2016宏命令的方法
吉夏兰
展开
因为Win10系统安全性比较高,原来在XP轻松运行的Excel宏都被禁用,显示结果都是未注册,没有权限无法加载之类的警告。
这个问题影响了很多程序软件功能的调用,连CATIA都无法启用自带的Excel宏。小编研究了半天才弄通了关键。首先打开系统盘以下目录,C:\Program Files (x86)\Common Files\Microsoft Shared\VBA
打开VBA6文件夹,将里面的文件VBE6EXT.OLB复制到C:\Program Files\Common Files\microsoft shared下的VBA7.1文件夹里面。
有些同学不知道这个简便方法,还要到网上专门下载VBE6EXT.OLB文件。其实Program Files (x86)本身就有的。直接复制过去即可。另外Excel2016一定要以管理员身份运行。
一般接下来还要设置下宏安全性:
在弹出的窗口中依次点击“信任中心”-“信任中心设置”-“宏设置”-“启用所有宏”即可。
- ?
Excel 打开时提示需要VBA的宏语言支持时怎么回事
糖恩
展开
因为文档中有宏,开启宏就可以了,操作方法如下:
1.打开office excel 2013,鼠标单击“文件”。
2.鼠标单击“选项”。
3.鼠标单击“信息中心”。
4.单击“信息中心设置”。
5.选择”宏设置“------启用所有宏”。
6.鼠标单击“确定”。宏启用完成。
(本文内容由百度知道网友茗童贡献)
- ?
1个案例教你学会Excel中的VBA
卢书竹
展开
可能很多朋友不知道Excel中VBA的用途。那什么是VBA呢?
一句话概括:在Excel中想实现什么功能,就可以用VBA语言编写一段程序去完成。
今天通过例子带大家了解Excel中的VBA!
软件说明:Excel 2010版本
场景再现:表格中点击按钮,向单元格E1中输入数字 “233”,并且能够实现清除!
第一步、打开编写VBA代码的窗口
在Excel表格中编写VBA的窗口叫VBE编辑器,有两种打开的方法。
在工作表标签上右键 - 查看代码按Alt+F11
第二步、创建写VBA代码的地方
有朋友肯定会问:“我没学会编程怎么办?”、“我都没见过代码能行吗?”;别急!我的回复是肯定的!
在哪编写代码呢?有好几种方式,今天先学最常用的:“插入” - “模块”。新建一个模块用来存放编写的代码;记住:修改模板的名称:我的VBA模板【如下图虚线标注】
第三步、开始写代码
新建模板后,在右侧的空白位置就是编写代码的地方。可以执行的VBA代码,结构是这样的:
Sub 程序名(参数)可以执行任务的代码End Sub
因为例子中我要进行输入与清除的操作,输入Sub 程序名()然后回车,End Sub就会自动输入;如下图:
在开始和结束语句之间输入代码,执行在单元格A1中输入数字"233"
Range("E1") = 123
备注:在VBA中,Range("单元格地址")来表示单元格。在单元格中输入值,直接用=值 即可(字符串两边要加双引用),如果清空则 =""。
再编写一段清空代码:
第四步、测试运行代码
在编写代码时经常要测试是否正确。测试方式是把光标放在代码行的任意位置【下图中“测试按钮”的位置】,点击运行小按钮进行测试;同样清空代码也一样。
第五步、点击按钮执行VBA代码
在Excel中插入的图形、图片、按钮控件都可以执行VBA代码。让它们执行很简单,点击“插入” - “矩形” - “指定宏”
只需要右键菜单中点击指定宏 - 选取编写的宏名称,选择“输入”,添加输入按钮。
同样添加清除按钮:
当然自己可以调整字体的颜色、字体,让其变得更加美观!
此时,通过VBA设置的输入“233”,并可以点击清除!
第六步、保存VBA代码
此时的VBA代码应该是既有输入代码又有清空代码;最后需要保存为“启用宏的工作簿"类型【注意下图中虚线框标注】,VBA代码才能保存下来。
好了!今天的分享就到这里,是不是感觉VBA也没有想象的那么难?
赶快转发、关注吧,更多技巧尽在头条号中!
- ?
自学VBA,编写自己的第一个VBA工具,录制宏
戚傲薇
展开
本节目标是让每个人能自己编写第一个VBA程序,先来看看几个前置条件。
1. Excel运行宏代码的时候需要在Excel中设置启动宏,如何开启请查看下图。
2. 宏代码只能保持在.xls或者xlsm格式的文件中,所以在编写完成后保存文件的时候一定记住选择.xls/.xlsm格式,否则你花半天写大代码都不翼而飞了。
3. 在Excel菜单中添加“开发工具”菜单,“开发工具”菜单里面都是用来开发VBA的菜单。
4. 快捷键Alt+F11,按这个快捷键会直接进入到VBA的编译器内,可以在里面编写你的VBA代码了。
下面来编写自己的第一个VBA工具,
1.打开Excel工具
2.在Sheet1中第一列录入一些信息
3.点击“开发工具”菜单,再点击“录制宏”按钮。
4.选中第一列,按Ctrl+C复制一下,再选中Sheet2,粘贴数据到第一列
5.选择“data”菜单中取重复的按钮,给第一列去重复。
6.点击“开发工具”菜单,停止录制宏。
好了,第一个VBA工具已经完成了,接下来看看如果运行工具。
1.删除掉Sheet2第一列数据,回到Sheet1
2.选择“开发工具”中“宏”菜单,在弹出的对话框中,你会看到有一个命名为Macro1(具体看电脑生成情况)的方法,再点击对话框中右边的“Run”按钮。
怎么样,是不是发现自己刚才的手动一步一步的操作,现在就只需要一个按钮都完成了。有没有瞬间感觉太不可思议,这个实例还只是入门级别的,你跟着学到后面才会发现真正的能提高工作效率的自动化工具的艺术。今天你学到了吗?给大家留一个思考题,录制宏能录制下自己所有的操作,是不是只要使用录制宏吧自己的操作都录制下来,一个真正能使用的自动化工具就完成了吗?相信经过大家的思考,能帮忙更快理解VBA。
excelvba宏
-
1、只需3秒快速实现求和
-
2、如何快速填充序号
-
3、如何自动填充序号(公式法)
-
4、数据条的神奇应用
-
5、多文本快速合并
-
6、查找与替换的不同玩法
-
7、快速定位到指定区域
-
8、数据排序、工资条制作
-
9、快速筛选(模糊、精确筛选)
-
10、快速插入空行
-
11、快速删除空行
-
12.快速跳转到天涯海角
-
13、.同时查看两个Excel文件
-
14、用条件格式扮靓报表
-
15、一键插入Excel图表
-
16、批量处理行高、列宽
-
17、利用拆分功能查看数据
-
18、批量录入相同内容
-
19、工作表快速跳转
-
20、批量录入表格模板(精品课程)
-
21、Excel函数与公式的应用、公式循环引用的查找
-
22、IF函数单条件判断同比增长
-
23、用sum函数 格式相同,连续多表数据汇总
-
24、excel快捷键
-
25、VLOOKUP函数——根据销售员匹配销售额
-
26、统计各部门销售总额
-
27、统计指定条件个数
-
28、怎样输入当前日期和时间、星期数
-
29、销售业绩排名
-
30、Sumproduct函数-万能函数(销售额汇总求和)
-
31、根据销售员,地区,商品名称汇总
-
32、批量替换PPT字体
-
33、给销售额数据批量添加万元单位
-
34、一秒快速核对两列数据
-
35、快速定位到指定单元格或区域
-
36、快速制作双行标题工资条
-
37、给你的表格做个瘦身
-
38、快速打开常用的Excel文件
-
39、快速打开多个Excel文件
-
40、利用创建组—快速隐藏/展开多列数据
-
41、快速制作下拉菜单
-
42、复制粘贴表格,如何保留数据源列宽格式一致?
-
43、两列数据位置互换
-
44、1秒钟扮靓报表——如何实现表格隔行换色
-
45、快速删除重复记录——保留唯一值
-
46、快速向下填充、向右填充,文本或公式
-
47、给Excel文件添加密码
-
48、插入带图片的批注
-
49、输入公式后不计算?
-
50、如何设置单元格缩进
-
51、快速解决Excel表格总显示货币格式
-
52、批量添加万元单位
-
53、你会四舍五入么?
-
54、用RAND函数机选彩票
-
55、冻结首行你会么?
-
56、超链接的高级应用
-
57、IFERROR函数-屏蔽错误值
-
58、批量填充颜色
-
59、录入数据
-
60、快速输入工号
-
61、快速行列转置
-
62、自定义缩放界面
-
63、多个单元格同时输入
-
64、如何计算立方米?
-
65、快速制作双行标题工资条
-
66、输入带方框的√和×
-
67、快速将姓名对齐
-
68、快速输入性别
-
69、按单位职务排序
-
70、自动计算合同到期日期
-
71、计算时间间隔
-
72、日期和时间的拆分
-
73、快速处理不规范的日期格式
-
74、快速填充合并单元格
-
75、效率加倍的快捷键
-
76、快速复制表格和对象
-
77、快速创建工作表副本
-
78、快速复制序列号
-
79、快速显示公式
-
80、多个单元格同时输入
-
81、快速调整显示比例
-
82、快速自动填充
-
83、快速填充(Ctrl+E)
-
84、Ctrl与数字键结合
-
85、快速将多列数据整理为1列
-
86、快速将1列数据拆分为多列
-
87、快速定位公式
-
88、快速录入数据
-
89、快速累计求和
-
90、身份证号码显示为0怎么办?
-
91、快速制作斜线表头
-
92、文本竖向显示
-
93、神奇的监视窗口
-
94、不一样的格式刷
-
95、快速美化图表
-
96、快速生成当前日期
-
97、快速找出循环引用
-
98、快速提取信息
-
99、二维表快速转换为一维表
-
100、快速多表合并