当前位置: 首页 > news >正文

从零开始学习VBA(一)

前置配置设置

首先配置开发设置(不同版本的配置方法会有差异,可根据自己使用的EXCEL版本到网络上找对应的方法,比如直接搜索Excel2010 开发工具)

以下为excel2016配置方法:

操作路径:文件-选项-自定义功能区-勾选开发工具-点击确定

-开启开发工具后要在信任中心中点击宏设置-勾选启用所有宏

 操作完毕后可以发现,已经配置完毕

IF语句

if 条件表达式 Then

条件表达式返回True时要执行的操作和计算

elseif   条件表达式  then

Else

条件表达式返回False时要执行的操作和计算

End If

FOR语句

语法:

For 循环变量 = 初值 To 终值 Step 步长值

循环体(要循环执行的操作或计算)

Next 循环变量名

For i = 1 To 5 Step 1

VBA会让循环变量i的值从1增加到5,每次增加1(每次增加多少,由Step后的数字确定)

For i = 5 To 1 Step -1

注意:当循环变量的终值大于初值时,步长值应设置为正整数,当循环变量的终值小于初值时,步长值该设置为负整数,否则,程序不会执行。

'range代表单元格 不是数值形式的都需要加入双引号
Sub 程序()
For i = 2 To 7
'从第一行到第六行每次步进为1 凡是单元格操作要看行数If Range("B" & i) = "女" ThenRange("C" & i) = "女士"ElseRange("c" & i) = "先生"End IfIf Range("D" & i) >= 90 ThenRange("E" & i) = "优秀"ElseIf Range("D" & i) >= 80 ThenRange("E" & i) = "良好"ElseIf Range("D" & i) >= 60 ThenRange("E" & i) = "及格"ElseRange("E" & i) = "不及格"End If
Next
'if语句必须要有首尾 &表示连接符
End Sub

生成1-100

    'range代表单元格 不是数值形式的都需要加入双引号Sub 程序()For i = 7 To 2 Step -1'凡是涉及删除操作的倒着判断If Range("B" & i) = "女" ThenRange("C" & i) = "女士"ElseRange("c" & i) = "先生"End IfIf Range("D" & i) >= 90 ThenRange("E" & i) = "优秀"ElseIf Range("D" & i) >= 80 ThenRange("E" & i) = "良好"ElseIf Range("D" & i) >= 60 ThenRange("E" & i) = "及格"ElseRange("E" & i) = "不及格"End IfIf Range("A" & i) = "" ThenRange("A" & i).SelectSelection.EntireRow.DeleteEnd IfNext'if语句必须要有首尾 &表示连接符End Sub

生成5个工作表

Sub 新建5张工作表()Dim i As Byte   '也可以定义为整型For i = 1 To 5 Step 1  '从1到5,步长为1时可以省略Worksheets.AddExit For'Exit For 跳出循环Next i     'i可以省略
End Sub

倒序删除

    'range代表单元格 不是数值形式的都需要加入双引号Sub 程序()For i = 7 To 2 Step -1'凡是涉及删除操作的倒着判断If Range("B" & i) = "女" ThenRange("C" & i) = "女士"ElseRange("c" & i) = "先生"End IfIf Range("D" & i) >= 90 ThenRange("E" & i) = "优秀"ElseIf Range("D" & i) >= 80 ThenRange("E" & i) = "良好"ElseIf Range("D" & i) >= 60 ThenRange("E" & i) = "及格"ElseRange("E" & i) = "不及格"End IfIf Range("A" & i) = "" ThenRange("A" & i).SelectSelection.EntireRow.DeleteEnd IfNext'if语句必须要有首尾 &表示连接符End Sub

相关文章:

从零开始学习VBA(一)

前置配置设置 首先配置开发设置(不同版本的配置方法会有差异,可根据自己使用的EXCEL版本到网络上找对应的方法,比如直接搜索Excel2010 开发工具) 以下为excel2016配置方法: 操作路径:文件-选项-自定义功…...

Kotlin Executors线程池newSingleThreadExecutor单线程

Kotlin Executors线程池newSingleThreadExecutor单线程 import java.util.concurrent.Executorsfun main() {val mExecutorService Executors.newSingleThreadExecutor()for (i in 1..5) {mExecutorService.execute {println("seq-$i tid:${Thread.currentThread().threa…...

ZooKeeper介绍

ZooKeeper是一个开放源代码的分布式协调服务。ZooKeeper的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用。 ZooKeeper是一个典型的分布式数据一致性的解决方案&#xff0…...

首起针对国内金融企业的开源组件投毒攻击事件

简述 2023年8月9日,墨菲监控到用户名为 snugglejack_org (邮件地址:SnuggleBearrxxhotmail.com)的用户发布到 NPM 仓库中的 ws-paso-jssdk 组件包具有发向 https://ql.rustdesk[.]net 的可疑流量,经过确认该组件包携带远控脚本&a…...

源于传承,擎领未来,新架构、新工艺下的“换心工程”——金融电子化访中电金信副总经理、研究院院长况文川

当前,商业银行的经营环境正在发生着深刻而复杂的变化,在深化改革主旋律的指引下,数字化转型已成为我国商业银行普遍认同、广泛采用的战略性举措。核心系统作为承载银行业务的关键支柱系统,一直是各银行在金融科技建设中重点关注和…...

pytest数据驱动(最简单)

目录 第一种:通过yaml文件获取数据(一维列表) 第二种:通过yaml文件获取数据(二维列表) 第三种:通过yaml文件获取数据(pytest.fixture) 资料获取方法 第一种&#xff…...

分布式 - 服务器Nginx:一小时入门系列之代理缓冲与缓存

官方文档:https://nginx.org/en/docs/http/ngx_http_proxy_module.html 1. 代理缓冲 proxy_buffer 代理缓冲用于临时存储从后端服务器返回的响应数据。通过使用代理缓冲,Nginx可以在接收完整的响应后再将其发送给客户端,从而提高性能和效率…...

什么是集成学习算法

目录 什么是集成学习算法 集成学习发展史 集成学习组织方式 1) 并联组织关系...

springboot多模块打包方式

明确子父模块结构 父目录是带modules 大致结构如下&#xff1a; <modules><module>ruoyi-admin</module><module>ruoyi-framework</module><module>ruoyi-system</module><module>ruoyi-quartz</module><module>…...

【爬虫】Urllib让我们的 python 假装是浏览器

在 Python 这个内置的 Urllib 库中&#xff0c;有这么 4 个模块&#xff1a; request&#xff0c;request模块是我们用的比较多的&#xff0c;就是用它来发起请求&#xff0c;所以我们重点说说这个模块。error&#xff0c;error模块呢&#xff0c;就是当我们在使用 request 模…...

java基础面试

java深拷贝和浅拷贝的区别 深拷贝和浅拷贝最根本的区别在于是否真正获取一个对象的复制实体&#xff0c;而不是引用。 假设B复制了A&#xff0c;修改A的时候&#xff0c;看B是否发生变化&#xff1a; 如果B跟着也变了&#xff0c;说明是浅拷贝&#xff0c;拿人手短&#xff…...

C++ 动态规划经典案例解析之最长公共子序列(LCS)_窥探递归和动态规划的一致性

1. 前言 动态规划处理字符相关案例中&#xff0c;求最长公共子序列以及求最短编辑距离&#xff0c;算是经典中的经典案例。 讲解此类问题的算法在网上一抓应用一大把&#xff0c;即便如此&#xff0c;还是忍不住有写此文的想法。毕竟理解、看懂都不算是真正掌握&#xff0c;唯…...

接口测试自动化:简化测试流程,提升效率

接口测试自动化&#xff1a;简化测试流程&#xff0c;提升效率 什么是接口测试自动化&#xff1f; 接口测试自动化是指使用特定的工具和技术来自动化执行接口测试的过程。通过编写脚本&#xff0c;自动化工具可以模拟用户与软件系统的交互&#xff0c;验证接口的功能和性能。…...

LoRA微调方法详解

本文要介绍的是大模型的微调训练方法之一----LoRA。 0 背景 现在大模型非常火爆&#xff0c;大家都在想方设法应用大模型。 当前很多大模型虽说可以zero-shot直接使用&#xff0c; 但是在具体应用上一般还是微调一下效果更好&#xff0c; 也就是常说的finetune。 在小模型时代…...

redis-数据类型及样例

一.string 类型数据的基本操作 1.添加/修改数据 set key value2.获取数据 get key3.删除数据 del key4.添加/修改多个数据 mset key1 value1 key2 value25.获取多个数据 mget key1 key2二.list类型的基本操作 数据存储需求&#xff1a;存储多个数据&#xff0c;并对数据…...

公司电脑三维图纸加密、机械图挡加密软件

机械图纸加密软件的问世&#xff0c;让很多的网络公司都大受其带来的工作中的便利。在安装了机械图纸加密软件后&#xff0c;不仅可以很好的管理员工在工作时的上网娱乐&#xff0c;在对整个公司员工的工作效率上也有着明显的提高&#xff0c;那么对于机械图纸加密软件的具体特…...

安装使用IDEA,修改样式,配置服务,构建Maven项目(超级详细版)

目录 前言&#xff1a; 一&#xff0c;安装 1.1打开官网JetBrains: Essential tools for software developers and teams点击 Developer Tools&#xff0c;再点击 Intellij IDEA 2.点击下载​编辑 3.选择对应的版本&#xff0c;左边的 Ultimate 版本为旗舰版&#xff0c;需要…...

Apache Dubbo 云原生可观测性的探索与实践

作者&#xff1a;宋小生 - 平安壹钱包中间件资深工程师 Dubbo3 可观测能力速览 Apache Dubbo3 在云原生可观测性方面完成重磅升级&#xff0c;使用 Dubbo3 最新版本&#xff0c;你只需要引入 dubbo-spring-boot-observability-starter 依赖&#xff0c;微服务集群即原生具备以…...

DaVinci Resolve Studio 18 for Mac 达芬奇调色

DaVinci Resolve Studio 18是一款专业的视频编辑和调色软件&#xff0c;适用于电影、电视节目、广告等各种视觉媒体的制作。它具有完整的后期制作功能&#xff0c;包括剪辑、调色、特效、音频处理等。 以下是DaVinci Resolve Studio 18的主要特点&#xff1a; - 提供了全面的视…...

Excelize Go语言操作 Office Excel文档基础库

Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库&#xff0c;基于 ECMA-376&#xff0c;ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式&#xf…...

【Linux】C语言执行shell指令

在C语言中执行Shell指令 在C语言中&#xff0c;有几种方法可以执行Shell指令&#xff1a; 1. 使用system()函数 这是最简单的方法&#xff0c;包含在stdlib.h头文件中&#xff1a; #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角&#xff0c;以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向&#xff0c;距离坐标原点x个像素;第二个是y坐标&#xff0c;表示当前位置为垂直方向&#xff0c;距离坐标原点y个像素。 坐标体系-像素 …...

Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析

Java求职者面试指南&#xff1a;Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么&#xff1f;它的作用是什么&#xff1f; Spring框架的核心容器是IoC&#xff08;控制反转&#xff09;容器。它的主要作用是管理对…...

热烈祝贺埃文科技正式加入可信数据空间发展联盟

2025年4月29日&#xff0c;在福州举办的第八届数字中国建设峰会“可信数据空间分论坛”上&#xff0c;可信数据空间发展联盟正式宣告成立。国家数据局党组书记、局长刘烈宏出席并致辞&#xff0c;强调该联盟是推进全国一体化数据市场建设的关键抓手。 郑州埃文科技有限公司&am…...

命令行关闭Windows防火墙

命令行关闭Windows防火墙 引言一、防火墙:被低估的"智能安检员"二、优先尝试!90%问题无需关闭防火墙方案1:程序白名单(解决软件误拦截)方案2:开放特定端口(解决网游/开发端口不通)三、命令行极速关闭方案方法一:PowerShell(推荐Win10/11)​方法二:CMD命令…...

Linux-进程间的通信

1、IPC&#xff1a; Inter Process Communication&#xff08;进程间通信&#xff09;&#xff1a; 由于每个进程在操作系统中有独立的地址空间&#xff0c;它们不能像线程那样直接访问彼此的内存&#xff0c;所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...

Java多线程实现之Runnable接口深度解析

Java多线程实现之Runnable接口深度解析 一、Runnable接口概述1.1 接口定义1.2 与Thread类的关系1.3 使用Runnable接口的优势 二、Runnable接口的基本实现方式2.1 传统方式实现Runnable接口2.2 使用匿名内部类实现Runnable接口2.3 使用Lambda表达式实现Runnable接口 三、Runnabl…...

Element-Plus:popconfirm与tooltip一起使用不生效?

你们好&#xff0c;我是金金金。 场景 我正在使用Element-plus组件库当中的el-popconfirm和el-tooltip&#xff0c;产品要求是两个需要结合一起使用&#xff0c;也就是鼠标悬浮上去有提示文字&#xff0c;并且点击之后需要出现气泡确认框 代码 <el-popconfirm title"是…...