VBA学习——1

news2024/10/3 0:21:05

VBA 过程的基本语法如下:

Sub 过程名(参数)
    语句1
    语句2
    ...
 End Sub

VBA 函数与 VBA 过程很相似,除了使用的关键词外,主要区别是,函数可以返回值。

Function [函数名]([参数]) As [返回值类型]
    语句1    
    语句2    
    ...    
    语句n    
    [函数名] = [返回值]
End Function

函数包含的语句中,相比过程,可以看到多一个 [函数名] = [返回值] 语句,这是函数的返回值语句

Excel VBA对象模型

  • 应用程序(Application)

  • 工作簿(Workbook)

  • 工作表(Worksheet)

  • 范围(Range)

许多使用 Excel 完成的工作都是围绕这四种对象及其成员进行的。位于顶层的是Application对象,也就是Excel应用程序本身,它包含Excel中的其它的对象,如Workbook对象;一个Workbook对象包含其它一些对象,如Worksheet对象;而一个Worksheet对象又可以包含其它对象,如Range对象, 一个 Range 对象,表示一个单元格、行、列、包含一个或多个单元格块的单元格选定区域(选定区域可能是连续的,也可能不是连续的)或甚至多个工作表上的一组单元格)。

Application.Workbooks(“Book1.xls”).Worksheets(“Sheet1”).Range(“A1”) 表明是对工作簿Book1上的工作表Sheet1中单元格A1的引用,其中Application代表Excel应用程序本身,可省略。特别地,若Book1是当前活动工作簿,则上述语句可简写为 Worksheets(“Sheet1”).Range(“A1”) ;若Sheet1是当前活动工作表,则又可简写为 Range(“A1”) 。因此,若在引用中省略了工作簿对象,则表明是使用当前活动工作簿;若再省略了工作表对象,则表明是使用当前活动工作表。

Worksheet.Cells语法
Worksheets("Sheet1").Cells(5, 3).Font.Size = 14
将 Sheet1 中单元格第5行第3列的字号设置为 14 磅。

一个简单的比较程序,比较两个sheet的序号是否一致

Sub compare()
    Sheet1.Range("C2:C1000").ClearContents
    
    'Dim sheet1_rows, sheet2_rows
    sheet1_rows = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).Row
    sheet2_rows = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row
    
    For i = 2 To sheet1_rows
        Worksheets("Sheet1").Cells(i, 3) = "不一致"
        For j = 2 To sheet2_rows
            If Worksheets("Sheet1").Cells(i, 1) = Worksheets("Sheet2").Cells(j, 1) Then
                Worksheets("Sheet1").Cells(i, 3) = "一致"
                Exit For
            End If
        Next
    Next
End Sub

其中
求出A列最后1行:Cells(Rows.Count, 1).End(3).Row "Cells(Rows.Count, 1)表示是查找A列最后一个非空单元格,按列的可以改Cells(1, Columns.count)end(xlup)表示的向上查找,还有其他3个方向,向下,向左,向右:xldown、xltoleft、xltoright

结果如下
在这里插入图片描述
参考链接:Excel VBA入门与实用例子

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/369642.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Servlet笔记(9):Cookie处理

一、Cookies处理 1、Cookies概念 Cookies是存储在客户端计算机上的文本文件,并保留各种跟踪信息。 识别返回用户的三个步骤 服务器脚本向浏览器发送一组Cookies。例如姓名、年龄或识别号码等。浏览器将这些信息存储在本地计算机上。当下一次浏览器向Web服务器发送…

SSM+HTML搭建(小白教学)

最近做项目,觉得还是有意义记录以下前后端框架是怎么搭建的,今天给大家介绍介绍SSM:SpringBootSpringMVCMyBatis后端搭建:SpringBoot快速搭建的网站(Spring Initializr)选择创建之后,会下载到一个zip压缩包,对压缩包进行解压(包地址一般选择后端项目的放的文件夹中)用idea打开项…

每日学术速递2.24

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.LG 1.BUAA_BIGSCity: Spatial-Temporal Graph Neural Network for Wind Power Forecasting in Baidu KDD CUP 2022 标题:BUAA_BIGSCity:百度KDD CUP 2022风电预测…

警惕!黑客正疯狂实施网络攻击,网站该如何防范?

自2021年以来,ATW组织宣称披露涉我国重要信息系统源代码、数据库等敏感信息70余次,涉及国家重要政府部门、航空、基础设施等100余家单位的300余个信息系统,尤其2022年以来,ATW组织滋扰势头加剧,持续对中国的网络目标实…

数据结构预算法之买股票最好时机动态规划(可买卖多次)

一.题目二.思路在动规五部曲中,这个区别主要是体现在递推公式上,其他都和上一篇文章思路是一样的。所以我们重点讲一讲递推公式。这里重申一下dp数组的含义:dp[i][0] 表示第i天持有股票所得现金。dp[i][1] 表示第i天不持有股票所得最多现金如…

【Http1.0和Http1.1的区别?Http1.1和Http2.0的区别?】

计算机网络面试的相关知识你可不能不知道呀!Http1.0和Http1.1的区别?Http1.1和Http2.0的区别? Http1.0和Http1.1的区别? 连接方式 : HTTP 1.0 为短连接,HTTP 1.1 支持长连接。状态响应码 : HTTP/1.1中新加入了大量的状…

小型水库大坝安全监测的主要对象

一、监测背景 大坝监测的目的分成两个大的方面,一方面是为了验证设计、指导施工、为科研提供必要的资料;另一方面,也可以说是更重要的方面,就是为了长期监视大坝的安全运行。因此,一个成功的监测设计者不仅要能充分领会…

Vmware 虚拟机无法联通主机

问题描述:今天使用Vmware Workstation 创建CentOS-7 虚拟机,基于CentOS-7 搭建Hadoop3 伪分布式版本,CentOS-7 测试Hadoop 3 服务正常启动,通过主机连接Hadoop 3的管理平台,提示如下错误信息:尝试解决办法&…

Android---Handler 源码解析

在 android 开发中,经常会在子线程中进行一些操作,当操作完后会通过 handler 发送一些数据给主线程,通知主线程做响应的操作。原理:子线程 handler 主线程,其实构成了线程模型中的经典问题,生产者-消费者模…

HHDESK文本对比功能

对比文件夹和图片而言,文本的更改更加频繁且琐碎;个别词语的更改更是让人“健忘”。 如果有一款工具能够直观的对文本进行对比,并且清晰的划分显示,那么便可以大量节约办公人员的精力和时间。 1 文本对比功能简介 版本更新&…

Ubuntu20.04配置深度学习环境

Ubuntu20.04配置深度学习环境 对于一台新Ubuntu20.04主机,想要直接进行深度学习模型的训练,需要进行一些常规配置。本文针对的情况包括物理机和虚拟机。安装部分本文不介绍,只介绍配置环境部分。 1. 安装中文输入法 参考如下博客&#xff…

Web安全最详细学习路线指南,从入门到入职(含书籍、工具包)

在这个圈子技术门类中,工作岗位主要有以下三个方向: 安全研发 安全研究:二进制方向 安全研究:网络渗透方向 下面逐一说明一下. 第一个方向:安全研发 你可以把网络安全理解成电商行业、教育行业等其他行业一样&#x…

《卓有成效的管理者》系列-总结篇

作者【美】彼得-德鲁克简介书中提到,每一位知识工作者其实都是管理者,而且卓有成效是每个管理者必须做到的事。书中认为所有负责行动和决策而且能够提高机构工作效率的人,都应该像管理者一样工作和思考。而且,一位卓有成效的管理者…

自考都有哪些科目?怎么搭配报考?

第一次自考科目搭配 先报理论课,熟悉学习和考试套路 参考搭配模式: 一、全报考公共课 公共课难度较低,通过率高,复习起来比较轻松。对于不确定考什么专业,后期想换专业的同学,考过公共课&#xff0c…

记一次Binder内存不足导致的应用被杀

每个进程的可用Binder内存大小是 1M-8KB 也就是900多KB 事情的起因的QA压测过程发生进程号变更,怀疑APP被杀掉过,于是开始看日志(实际后来模拟的时候可以发现app确实被杀掉了) APP的压测平台会上报进程号变更时间点,发…

基于C++环境的gRPC安装配置:vcpkg+CMake+VS2022

前言gRPC 是 Google 提供的一个 RPC 框架,用于在网络上实现多个应用程序之间的通信。gRPC的优点是支持多种语言,因此可以轻松使用C应用程序与Go或Python应用程序进行通信。尽管CSDN、知乎有很多讲解gRPC在C环境安装的文章,其中最常见的是使用…

LaneAF论文解读和代码讲解

论文地址:https://arxiv.org/abs/2103.12040 一、论文简介 LaneAF是一个语义分割聚类后处理的一种方法。相对于之前的用聚类算法对embedding分支聚类的方法,该论文提出了水平和垂直两个向量场,用来取缔之前的普通聚类。根据向量场就可以完成…

HashMap红黑树源码解读

链表转换为红黑树节点当往hashMap中添加元素,在同一个hash槽位挂载的元素超过8个后,执行treeifyBin方法。在treeifyBin方法中,只有当tab数组(hash槽位)的长度不小于MIN_TREEIFY_CAPACITY(默认64&#xff09…

modbus协议

1 MODBUS 应用层报文传输协议 ADU应用数据单元PDU协议数据单元MBMODBUS协议MBAPMODBUS协议 ADU:地址域 PDU 差错校验PDU:功能码数据 串行链路: 最大RS485 ADU 256 字节PDU 256 - 服务器地址(1字节)- CRC&#xf…

Linux学习(7)文件权限与目录配置

目录 1. 使用者与群组 1,文件拥有者 2,群组概念 3,其他人 Linux 用户身份与群组记录的文件 2.Linux 文件权限概念 Linux的文件属性 第一栏代表这个文件的类型与权限(permission): 第二栏表示有多少档名连结到此节点(i-no…