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

Excel VBA开发基本语句说明

前言

VBA(Visual Basic for Applications)是一种用于编写宏的编程语言,它广泛应用于Microsoft Office套件中的各种应用程序,如Excel、Word、Access和PowerPoint等。在这些应用程序中,VBA可用于自动化任务、定制功能、数据处理和报告生成等。

虽然VBA已经存在很长时间,并且被广泛应用于许多组织和行业,但是随着时间的推移,它的使用正在逐渐减少。原因可以归结为以下几点:

  1. 跨平台兼容性:VBA是一种Windows环境下的宏语言,对于其他操作系统,如Mac和Linux,并不完全适用。因此,随着人们对跨平台兼容性的需求增加,其他更通用的编程语言(如Python和JavaScript)在处理类似任务时更受欢迎。
  2. 功能限制:VBA虽然功能强大,但与其他现代编程语言相比,它的功能和性能受到一定的限制。人们对更高效、更灵活的解决方案的需求也推动了其他语言的发展和应用。
  3. Office 365的出现:随着Office 365的发展,微软逐渐将注意力转向了更先进的工具和技术。例如,Power Automate
    和Power Apps等工具提供了更强大和易于使用的方式来自动化任务和定制功能。

尽管如此,VBA仍然在某些特定的行业和组织中得到广泛使用,特别是在那些长期依赖VBA开发的企业和机构

最近在做一些excel vba开发 总结了开发过程操作单元格语法,希望能帮助需要的人

实战总结

访问工作簿:

Dim wb As Workbook
Set wb = ThisWorkbook

访问工作表:

Dim ws As Worksheet
Set ws = wb.Worksheets("Sheet1")

引用单个单元格:

Dim cell As Range
Set cell = ws.Range("A1")

引用单元格范围:

Dim range As Range
Set range = ws.Range("A1:B5")

引用整行:

Dim row As Range
Set row = ws.Rows(1)

引用整列:

Dim column As Range
Set column = ws.Columns(1)

确定工作表中最后一个有数据的单元格所在行数

ws.Cells(ws.Rows.count, 1).End(xlUp).Row
  • ws.Rows.Count:表示工作表的总行数。
  • 1:表示要访问的列号,这里是列号为1的列(即第一列)。
  • End(xlUp):这是一个定位方法,用于从指定单元格向上搜索,直到找到第一个非空单元格为止。在这个例子中,它会从工作表最后一行向上搜索,找到第一个非空单元格。
  • Row:表示找到的最后一个非空单元格所在的行号。

确定工作表中指定行中最后一个有数据的单元格所在的列数

scheduleSheetLastColumn = ws.Cells(8, ws.Columns.count).End(xlToLeft).Column
  • 8:表示要访问的行号,这里是第8行。
  • ws.Columns.Count:表示工作表的总列数。
  • End(xlToLeft):这是一个定位方法,用于从指定单元格向左搜索,直到找到第一个非空单元格为止。在这个例子中,它会从指定行的最后一列向左搜索,找到第一个非空单元格。
  • Column:表示找到的最后一个非空单元格所在的列号。

第一列插入一列,并将现有的数据向右移动

ws.Columns(1).Insert Shift:=xlToRight

引用单元格 K8

Set tableStartCell = ws.Range("K8")

引用范围对象(K8~K18)

ws.Range(tableStartCell, tableStartCell.Offset(0, 10))

取消合并单元格

tableStartCell.UnMerge

设置范围(K8~K18)背景色

将其内部颜色设置为 RGB(255, 255, 0),即黄色

ws.Range(tableStartCell, tableStartCell.Offset(0, 10)).Interior.Color = RGB(255, 255, 0)

获取单元格地址代码

ws.Cells(8, 10).Address

合并单元格(K8~K10)

ws.Range(tableStartCell, tableStartCell.Offset(0, 2)).Merge

● 单元格范围公式复制

获取第 10 行第 11 列和第 10 行第 12 列的单元格的内容

Dim rangeToCopy1 As Range
Set rangeToCopy1 = ws.Range(ws.Cells(10, 11), ws.Cells(10,  12))

获取第 20 行第 11 列和第 20 行第 12 列的单元格的内容

Dim destinationRange1 As Range
Set destinationRange1 = ws.Range(ws.Cells(20, 11), ws.Cells(20, 12))

将第 10 行第 11 列和第 10 行第 12 列的单元格的内容复制到第 20 行第 11 列和第 20 行第 12 列的单元格中。

rangeToCopy1.Copy Destination:=destinationRange1

设置单元格文字样式

获取A1 到 H1 范围内的单元格

Set rng = ws.Range("A1:H1")With rng.Font.Color = RGB(0, 0, 0).HorizontalAlignment = xlLeft.Font.Size = 9.Font.Bold = False
End With
  • .Font.Color = RGB(0, 0, 0) 设置字体颜色为黑色。
  • .HorizontalAlignment = xlLeft 设置水平对齐方式为左对齐。
  • .Font.Size = 9 设置字体大小为9号。
  • .Font.Bold = False 取消粗体设置。

大鹏一日同风起 扶摇直上九万里 加油!!!!

End

相关文章:

Excel VBA开发基本语句说明

前言 VBA(Visual Basic for Applications)是一种用于编写宏的编程语言,它广泛应用于Microsoft Office套件中的各种应用程序,如Excel、Word、Access和PowerPoint等。在这些应用程序中,VBA可用于自动化任务、定制功能、…...

应用在智能空调中的数字温度传感芯片

智能空调是具有自动调节功能的空调。智能空调系统能根据外界气候条件,按照预先设定的指标对温度、湿度、空气清洁度传感器所传来的信号进行分析、判断、及时自动打开制冷、加热、去湿及空气净化等功能的空调。适合放在卧室,客厅等地方。 在中央控制系统…...

Qt界面美化之Qt Style Sheets

Qt style sheet 简称QSS style sheet可以在代码中单独对某个控件使用,例如: labelLEDLIN new QLabel("",this); labelLEDLIN->setFixedSize(36,36); labelLEDLIN->setStyleSheet("background-color:red;border-radius:18px;colo…...

prometheus监控告警部署(k8s内部)

一、部署prometheus 先来说明一下需要用到的组件,需要使用pv、pvc存放prometheus的数据,使用pvc存放数据即使pod挂了删除重建也不会丢失数据,使用configmap挂载prometheus的配置文件和告警规则文件,使用service开放对外访问prometheus服务的端…...

数字孪生特高压电网三维可视化平台实现能源智能管理

电力是现代社会不可或缺的基础能源,而有效管理电力资源对于实现可持续发展至关重要。近年来,随着物联网、大数据、人工智能等技术的快速发展,电网领域的数字化转型已经成为一种趋势。而其中关键的一环便是电网三维数字孪生技术,它…...

12.JavaScript(WebAPI) - JS api文献精解

文章目录 1.WebAPI 背景知识1.1什么是 WebAPI1.2什么是 API1.3API 参考文档 2.DOM 基本概念2.1什么是 DOM2.2DOM 树 3.获取元素3.1querySelector3.2querySelectorAll 4.事件初识4.1基本概念4.2事件三要素4.3简单示例 5.操作元素5.1获取/修改元素内容5.1.1innerText5.1.2innerHT…...

亚马逊云科技:让生成式AI真正走向普惠

伴随着ChatGPT的横空出世,生成式AI(Artificial Intelligence Generated Content,也称AIGC)大潮也以锐不可当之势席卷全球。从各行各业的商业领袖,到千千万万的程序员和开发者,都在思考如何借助生成式AI技术…...

Java web(四):JSP

文章目录 一、JSP1.1 概述1.2 JSP入门1.3 JSP脚本1.4 缺点 二、EI表达式三、JSTL3.1 标签3.2 JSTL使用3.3 代码演示 四、MVC模式和三层架构五、项目实战【完成增删改查】 一、JSP 1.1 概述 JSP(全称:Java Server Pages):Java 服…...

HarmonyOS(二)—— 初识ArkTS开发语言(中)之ArkTS的由来和演进

前言 在上一篇文章HarmonyOS(二)—— 初识ArkTS开发语言(上)之TypeScript入门,我初识了TypeScript相关知识点,也知道ArkTS是华为基于TypeScript发展演化而来。 从最初的基础的逻辑交互能力,到…...

电子产品上架Temu平台需要做什么认证?UL测试报告

2022年8月17日报道,TEMU正在筹备跨境电商平台。9月1日,TEMU跨境电商平台正式在海外上线,首站将面向北美市场,该平台命名为TEMU,App Store应用详情页显示意为“Team Up,Price Down”,即买得人越多…...

热点报告 | 健身人群抵抗入冬肥,Dirtyfit引领23秋冬潮流?

您是否曾有以下困惑?打开小红书首页推荐,似乎已经被算法教育成了成熟的信息茧房,想要找到下一个热点,又忧虑一叶以障目;看着搜索框热词,又担心无法掌握热词背后的话题命脉,难以在浮光掠影中寻找…...

C++变参模板的使用

C17 1. 使用编译器if常量表达式 template<typename T, typename U, typename... Ts> void syszuxPrint(T arg1, Ts... arg_left) {std::cout << arg1 << ", ";if constexpr (sizeof...(arg_left) > 0){syszuxPrint(arg_left...);} } 但是这…...

【二、http】go的http基本请求设置(设置查询参数、定制请求头)get和post类似

一、设置url后边的参数&#xff0c;&#xff08;get和post请求为例子&#xff09; func requstByParamsGet(){requst, err : http.NewRequest(http.MethodGet, "http://httpbin.org/get", nil)if err ! nil {fmt.Println("ss")}params : make(url.Values)p…...

[学习笔记]python绘制图中图(绘制站点分布图)

背景 在绘制站点分布图时&#xff0c;有时需要采用图中图的方式&#xff0c;以便于在一张图中尽可能多的表达信息。此处记录一下利用python matplotlib绘制图中图的脚本&#xff0c;方便然后查询。 包含数据 该绘图脚本中包含以下数据&#xff1a; CMONOC站点分布&#xff…...

回归预测 | Matlab实现POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机多变量回归预测

Matlab实现POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机多变量回归预测 目录 Matlab实现POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.POA-CNN-SVM鹈鹕算法优化卷积神经网络-支持向量机的多变量回归…...

React 学习笔记

React React.js是一个开源的JavaScript库&#xff0c;由Facebook于2013年开发&#xff0c;用于构建用户界面或UI组件。它主要用于构建单页应用程序或SPA&#xff0c;并且可以在Web和移动应用程序中使用。React.js使用虚拟DOM来提高性能&#xff0c;并使用组件化的方式来实现代…...

单链表的查找(按值查找、按位查找)(数据结构与算法)

什么是单链表&#xff1f; 单链表是一种常见的链式数据结构&#xff0c;用于存储和操作数据元素的集合。它由一系列的节点组成&#xff0c;每个节点包含两个部分&#xff1a;数据域和指针域。 单链表的每个节点包含了存储数据的数据域&#xff0c;以及指向下一个节点的指针域。…...

Qt 6.6 发布

@TOC 前言 Qt 6.6 发布于2023年10月10日 https://www.qt.io/blog/qt-6.6-releasedQt 6.6 系列源码下载 https://download.qt.io/official_releases/qt/6.6/Qt 在线安装器下载 https://download.qt.io/official_releases/online_installers/国内镜像下载 在线安装器(维护工具)…...

unity工程

1首先我们来熟悉一下Unity每个文件夹的作用 1.assets&#xff1a;工程资源文件夹 2.library&#xff1a;库文件夹 3.logs&#xff1a;日志文件夹 4.obj&#xff1a;编译产生中间文件 5.packages&#xff1a;包配置信息 6&#xff1a;projectsettings&#xff1a;工程设置…...

蓝桥杯官网练习题(地址转换)

题目描述 Excel 是最常用的办公软件。每个单元格都有唯一的地址表示。比如&#xff1a;第 12 行第 4 列表示为&#xff1a;"D12"&#xff0c;第 5 行第 255 列表示为"IU5"。 事实上&#xff0c;Excel 提供了两种地址表示方法&#xff0c;还有一种表示法叫…...

基于算法竞赛的c++编程(28)结构体的进阶应用

结构体的嵌套与复杂数据组织 在C中&#xff0c;结构体可以嵌套使用&#xff0c;形成更复杂的数据结构。例如&#xff0c;可以通过嵌套结构体描述多层级数据关系&#xff1a; struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

MySQL 知识小结(一)

一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库&#xff0c;分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷&#xff0c;但是文件存放起来数据比较冗余&#xff0c;用二进制能够更好管理咱们M…...

08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险

C#入门系列【类的基本概念】&#xff1a;开启编程世界的奇妙冒险 嘿&#xff0c;各位编程小白探险家&#xff01;欢迎来到 C# 的奇幻大陆&#xff01;今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类&#xff01;别害怕&#xff0c;跟着我&#xff0c;保准让你轻松搞…...

Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?

Pod IP 的本质与特性 Pod IP 的定位 纯端点地址&#xff1a;Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址&#xff08;如 10.244.1.2&#xff09;无特殊名称&#xff1a;在 Kubernetes 中&#xff0c;它通常被称为 “Pod IP” 或 “容器 IP”生命周期&#xff1a;与 Pod …...

tauri项目,如何在rust端读取电脑环境变量

如果想在前端通过调用来获取环境变量的值&#xff0c;可以通过标准的依赖&#xff1a; std::env::var(name).ok() 想在前端通过调用来获取&#xff0c;可以写一个command函数&#xff1a; #[tauri::command] pub fn get_env_var(name: String) -> Result<String, Stri…...

消息队列系统设计与实践全解析

文章目录 &#x1f680; 消息队列系统设计与实践全解析&#x1f50d; 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡&#x1f4a1; 权衡决策框架 1.3 运维复杂度评估&#x1f527; 运维成本降低策略 &#x1f3d7;️ 二、典型架构设计2.1 分布式事务最终一致…...