Excel之VBA简单宏编程

Excel之VBA简单宏编程Excel之VBA简单宏编程excel是一款很经典的数据分析的工具,里面包含了很多内置函数,但实际情况有时却复杂得多,而excel的宏编程提供了自定义函数的功能,正好有老师需要帮忙做一些数据分析,就学习了一下,下面是我的学习笔记。本人使用的是excel2013。有出入的地方可以参考。Excel之VBA简单宏编程1、准备工作2、VBA编程2.1模块声明2.2变量声明及赋值2…

大家好,又见面了,我是你们的朋友全栈君。

Excel之VBA简单宏编程

excel是一款很经典的数据分析的工具,里面包含了很多内置函数,但实际情况有时却复杂得多,而excel的宏编程提供了自定义函数的功能,正好有老师需要帮忙做一些数据分析,就学习了一下,下面是我的学习笔记。本人使用的是excel2013。有出入的地方可以参考。

1、准备工作

  • 打开开发工具面板(excel的主选项卡默认是没有开发工具选项卡的)

文件->选项->自定义功能区->
这里写图片描述
这时候主选项卡就有开发工具项了

  • 进入vba编辑

点击visual basic进入
这里写图片描述
在VBAProject上右键->插入->模块
出现一个编辑文件如下图
这里写图片描述
然后就可以在这里写入vba代码。

2、VBA编程

2.1模块声明

  类似于一个程序,一个模块要有一个主程序入口即模块声明,如
Sub sname() ··· ··· End Sub

2.2变量声明及赋值

  声明格式为:
Dim ‘变量名称’ As ‘变量类型’
  如
Dim i As Integer Dim str As String
  赋值格式为:
i = 3
str = “hello world!”
  直接等号赋值

数据类型 定义符号 备注
字符串 String
整型数字 Integer -32768~32767
长整型数字 Long -2147483648~2147483647
单精度浮点型数字 Single 精度为6
双精度浮点型数字 Double 精度为14
日期型 Date
布尔型 Boolean
变体型 Variant 万用的类型,尽量避免使用
对象型 Object 没有深究
枚举型

枚举类型数据定义格式:
Public|Private Enum 变量名
  成员1[=常数表达式1]
  成员1[=常数表达式1]
  ··· ···
End Enum
例如:
Public Enum WorkDays
  星期日
  星期一
  星期二
  星期三
  星期四
  星期五
  星期六
End Enum

2.3if-else结构
If ······ Then
  ······
ElseIf ······ Then
  ······
Else
  ······
End If
2.4循环结构
Do While ······
  ······
Loop
For i = 0 To 100 Step 1
  ······
Next i

跳出for循环可以用 Exit For

2.5比较运算符
名称 运算符
等于 =
不等于 <>
小于 <
小于等于 <=
大于 >
大于等于 >=
字符串匹配 Like
2.6注释

  VBA里的单行注释以单引号'标识

3、常用功能

3.1获取表格数据
  • 获取第i行j列单元格数据
    Sheets(‘表格名’).Cells(i,j).Value
  • 获取第i行数据
    Sheets('表格名').Rows(i)
  • 获取第j列
    Sheets('表格名').Columns(j)
  • 获取一块
    Range("a1:b60")
3.2复制单元格且保留原单元格列宽
Sheets(name_1).Cells(i, k).copy
Sheets(name_result).Cells(i,k).PasteSpecial xlPasteColumnWidths
3.3设置单元格、某一行或某一列颜色
Sheets(name_1).Rows(i).Interior.ColorIndex = 3'
Sheets(name_1).Rows(i).Font.ColorIndex = 1
Sheets(name_1).Cells(i,j).Interior.ColorIndex = 3'
Sheets(name_1).Cells(i,j).Font.ColorIndex = 1

这里写图片描述

3.4获取表格有用列数和有用行数
irows1 = Sheets(name_1).UsedRange.Rows.Count
icolumns1 = Sheets(name_1).UsedRange.Columns.Count

4、调试运行

快捷键 功能
F8 逐语句运行
Shift+F8 逐过程运行
Ctrl+F8 运行到光标处
F9 光标处添加断点
调试->添加监视 添加监视
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/130843.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • kafka批量删除topic_kafka查看topic数据量

    kafka批量删除topic_kafka查看topic数据量利用kafka命令删除topic不成功。kafka-topics.sh–zookeeperhadoop111:2181–delete–topictest原因&解决方式1.配置文件未将delete.topic.enable=true,导致删除命令未及时生效;解决方式:第一种:找到conf目录下server.properties配置文件,修改delete.topic.enable=true,代表删除立即生效;[ssrs@hadoop111config]$pwd/opt/mod

    2022年10月16日
  • mount命令详解

    mount命令详解原文链接:https://blog.csdn.net/happy_teemo/article/details/80026906挂接命令(mount)首先,介绍一下挂接(mount)命令的使用方法,

  • 简述css盒模型概念_css盒模型和ie盒模型

    简述css盒模型概念_css盒模型和ie盒模型Python-html css 盒模型

  • css3奇偶选择器[通俗易懂]

    css3奇偶选择器[通俗易懂]数学里面的奇数偶数,上代码trtd:nth-of-type(odd){margin-left:20px;}奇数行trtd:nth-of-type(even){margin-left:10px;}偶数行

  • [转摘]利用SgmlReader返回XPath分析HTML

    [转摘]利用SgmlReader返回XPath分析HTML

  • AVX2指令集浮点乘法性能分析

    AVX2指令集浮点乘法性能分析AVX2指令集浮点乘法性能分析一、AVX2指令集介绍二、代码实现0.数据生成1.普通连乘2.AVX2指令集乘法:单精度浮点(float)3.AVX2指令集乘法:双精度浮点(double)三、性能测试测试环境计时方式测试内容进行性能测试第一次测试第二次测试四、总结个人猜测原因:一、AVX2指令集介绍AVX2是SIMD(单指令多数据流)指令集,支持在一个指令周期内同时对256位内存进行操作。包含乘法,加法,位运算等功能。下附Intel官网使用文档。Intel®IntrinsicsGuide我

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号