企业培训问题与帮助-office培训,excel培训,PPT培训,word培训,vba培训,project培训,access培训,outlook培训

当前位置: 首页 > 新闻资讯 > 资讯详情

Excel表格中,你千万别学“宏",我是认真的。

发布时间:2016-12-14

发布者:office企业中国

一、什么是宏?


先举个例子:

Excel有一个任务:在C列值的基础上加上B列的值。

1、选取B列并复制

2、选取C列右键 - 选择性粘贴 - 加

完成!

如上,你在Excel中进行的一系列的操作过程,就是一个宏。操作过程(宏)可以是一步也可以是若干步,使用一个Excel命令或多个Excel命令。


宏,我们也可以看成是一个个可以完成特定目标的功能


二、为什么学习宏?


Excel提供了很多功能,可以完成各种操作。筛选数据有自动筛选和高级筛选,汇总数据有分类汇总、数据透视表等.......



但....还是有Excel无能为力的时候。比如:

批量取消工作表隐藏

批量合作多个工作表或Excel文件

批量......


有难题就需要有解决办法,怎么办,怎么办?


有办法。就是Excel中没有的功能,我们自已添加,也就是我们自已编写可以完成指定功能的宏。就象Excel内置功能一样,可以供我们随时使用。



三、怎么编写宏


有一种语言,它的名称叫VBA(visual baisic for application),它是Excel所支持的开发语言,也就是说,我们可以用VBA语言来编写我们需要的功能(宏),除此之外,我们还可以用VBA来编写Excel函数。


四、在哪编写宏


有一个窗口,都叫它VBE编辑器。你可以在工作表标签上右键菜单中点击”查看代码“,就可以打开它。更多的是我们通过”开发工具“选项卡打开这个界面。




需要什么功能,就可以编写什么功能,需要什么函数,就可以编写什么函数,工作中再也没有我们完不成的任务。


还有什么理由可以让我们不向往强大的宏编程(VBA语言),这也可以解释,为什么很多函数高手放弃让人炫晕的Excel数组公式学习,技巧高手放弃繁杂的内置功能研究了。


附:范姐最近写的几段常用VBA代码


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 Sub

热门资讯

  • Excel表格中,你千万别学“宏",我是认真的。

    曾经有很多人对范姐说,Excel技巧和函数高手,千万别学宏。因为一旦爱上宏编程,Excel圈里很快就会少了一个技巧或函数高手!Why? 耐心看下去你就会明白。

  • PPT装“逼”指南

    你为什么做不好PPT? ...... 千篇一律的模板配色,单调的艺术字, 逻辑不清楚,主旨模糊, 讲的人说不明白,听的人更不懂, 什么效果都不添加,什么链接都不引入, 这样的PPT如何能够圈地自萌?

  • 秀几个手机版Office技巧

    手机上聊天、邮件、文档越来越多,如何适应「移动办公」?如何让手机也有处理文档的基本能力?

  • Office 2016评测

    Office 2016办公套件,称其是第一代Office之后最棒的一次升级。它主要在细节之处进行改进,通过智能查询、新增图表、协同操作让办公更高效,但并没改变Office的核心和本质。

  • Office文档缩放打印三招

    工作中也许会遇到这样的问题,事先编辑好的一张Excel表格,恰好容纳在一张B4纸上,现在需要将纸型改为A4,但仍要打印在一张纸上该怎么办呢?

Office企业中国隶属于上海准通信息科技有限公司,总部位于上海,专注企业高端Office培训15年,帮助企业员工实现更高效的Office办公效率

上海准通信息科技有限公司版权所有 1998-2015 All Rights Reserved.   沪ICP备12039555号-2