如何学习VBA_3.2.14:VBA中字符串的处理和判断函数

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的劳动效率,而且可以提高数据处理的准确度。我推出的VBA系列教程共九套和一部VBA汉英手册,现在已经全部完成,希望大家利用、学习。

如果您只是一般的职场VBA需求,可以打包选择7.1.3.9教程+汉英手册,第7套教程是入门,第1套教程是入门后的提高,第3套教程字典是必备的VBA之精华,第9套教程是实用的典型案例讲解。这四套教程内容掌握后足以处理一般工作中的问题,实际写代码的时候再辅助代码汉英手册,足矣!如果您想进一步提高,就需要选择高级阶段的教程了

VBA是面向对象编程的语言,博大精深。很多朋友咨询VBA的学习方法,我会陆续给大家讲解一些我的经验,大家可以慢慢体会。今日的内容是:如何学习VBA_3.2.14:VBA中字符串的处理和判断函数2e55d0eed334def92485ec57be3a9e1e.jpeg

【分享成果,随喜正能量】人这一辈子,经历多了,忙乎到最后,都会发现,荣华富贵从来就不是幸福的必要条件,真正的幸福和逍遥,而是兜里有钱,身体没病,心里没事。得之坦然,失之淡然。活在当下,不念过往,不畏将来,才是通往幸福的最好的选择。。

3.2.14 字符串的处理

通常情况下字符串指的是一种数据的类型,在学习教程中我们要注意以下几点:

1 与在双字节字符集 (DBCS) 语言中一样,将 LenB 函数用于字符串中包含的字节数据。 LenB 返回用于表示此字符串的字节的数目,而不是返回字符串中的字符数。在与用户定义类型一起使用时,LenB 将返回内存中大小,包括各个元素之间的任何填充。

2 在与用户定义的数据类型中的可变长度字符串一起使用时,Len 无法确定所需的实际存储字节数。

3 Use the RightB function with byte data contained in a string. Instead of specifying the number of characters to return, length specifies the number of bytes。

4 与在双字节字符集语言中一样,将MidB函数用于字符串中包含的字节数据。参数将指定字节数,而不是指定字符数。有关使用 MidB 的示例代码,请参阅示例:

使用 MidB 和用户定义的函数 (MidMbcs) 返回字符串中的字符。此处的差别在于,输入字符串用 ANSI 表示,而长度用字节表示。

Function MidMbcs(ByVal str as String, start, length)

MidMbcs = StrConv(MidB(StrConv(str, vbFromUnicode), start, length), vbUnicode)

End Function

Dim MyString

MyString = "AbCdEfG"

' Where "A", "C", "E", and "G" are DBCS and "b", "d",

' and "f" are SBCS.

MyNewString = Mid(MyString, 3, 4)

' Returns "CdEf"

MyNewString = MidB(MyString, 3, 4)

' Returns "bC"

MyNewString = MidMbcs(MyString, 3, 4)

' Returns "bCd"

3.2.15 判断函数IsArray、IsDate、IsEmpty、IsEmpty、IsError、IsMissing

在VBA中有几个不一般的IS函数,我们称之为判断函数。为了补充教程上的内容,我这里给大家再次介绍:

1 IsArray 函数

返回指示变量 是否是数组的 Boolean 值。

语法:IsArray(varname)

参数:varname参数是指定变量的标识符。

“IsArray”在变量是数组时返回“True”否则返回“False”。 “IsArray”对包含数组的变量尤其有用。

2 IsDate 函数

返回真,如果表达是一个日期或可识别为有效的日期或时间;否则,它返回false。

语法:IsDate(expression)

参数:expression是一个Variant 类型的值, 其中包含可识别为日期或时间的日期表达式或字符串表达式。

需要注意的是:在 Windows 中, 有效日期的范围是公元100年1月1日至公元9999年12月31日;各操作系统的范围各不相同。

3 IsEmpty 函数

返回一个指示是否已初始化变量的布尔值。

语法: IsEmpty(expression)

参数expression是一个包含数值或字符串表达式的Variant 。 但是, 由于IsEmpty用于确定是否初始化了各个变量, 因此expression通常是单个变量名称。

备注: IsEmpty 在变量未初始化或显式设置为 Empty 时返回 True;否则,返回 False。 如果 expression 包含多个变量,则始终返回 False。 IsEmpty 仅返回变量的有用信息。

ee7e7676dea6836ce6321ea26752ab9c.jpeg

4 IsError 函数

返回一个 Boolean 值,指示表达式是否为错误值。

语法: IsError(expression)

参数:expression可以是任何有效的表达式。

备注:错误值是通过使用CVErr函数将实数转换为错误值来创建的。 IsError 函数用于确定数值表达式是否表示错误。 如果 expression 参数指示错误,则 IsError 返回 True;否则,返回 False。

5 IsMissing 函数

返回一个布尔值, 该值指示是否已将可选Variant 参数传递给过程。

语法:IsMissing(argname)

参数:argname 参数包含可选 Variant 过程参数的名称。

备注:使用 IsMissing 函数可检测调用过程时是否提供了可选 Variant 参数。 如果未为指定参数传递任何值,则 IsMissing 将返回 True;否则将返回 False。

如果 IsMissing 针对某参数返回 True,则在其他代码中使用缺少参数可能导致用户定义的错误。

如果对 ParamArray 参数使用 IsMissing,则将始终返回 False。若要检测空 ParamArray,请测试以查看数组的上限是否低于下限。

898d36f867a9188654c39366b7b59a6d.jpeg

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:

ce8bd8be6db75cf7b4781a129f86aa82.jpeg


3cbc68abd8b49fc9bc43f9831628e73a.jpeg

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

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

相关文章

RestFul的认识

前言 RESTful 是 Representational State Transfer 的缩写,是一种软件架构风格,用于在网络上构建和整合应用程序。它基于 HTTP 协议,并定义了一组约束和规范,用于规范客户端和服务器之间的通信。 RESTful API 是遵循 REST 架构规…

【复现】Supabase后端服务 SQL注入漏洞_48

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 Supabase是什么 Supabase将自己定位为Firebase的开源替代品,提供了一套工具来帮助开发者构建web或移动应用程序。 Sup…

441. Arranging Coins( 排列硬币)

问题描述 你总共有 n 枚硬币,并计划将它们按阶梯状排列。对于一个由 k 行组成的阶梯,其第 i 行必须正好有 i 枚硬币。阶梯的最后一行 可能 是不完整的。 给你一个数字 n ,计算并返回可形成 完整阶梯行 的总行数。 问题分析 等差数列求和问…

【c++基础】国王的魔镜

说明 国王有一个魔镜,可以把任何接触镜面的东西变成原来的两倍——只是,因为是镜子嘛,增加的那部分是反的。 比如一条项链,我们用AB来表示,不同的字母表示不同颜色的珍珠。如果把B端接触镜面的话,魔镜会把…

LeetCode、1268. 搜索推荐系统【中等,前缀树+优先队列、排序+前缀匹配】

文章目录 前言LeetCode、1268. 搜索推荐系统【中等,前缀树优先队列、排序前缀匹配】题目类型及分类思路API调用(排序前缀匹配)前缀树优先队列 资料获取 前言 博主介绍:✌目前全网粉丝2W,csdn博客专家、Java领域优质创…

车载诊断协议DoIP系列 —— DoIP应用(Application)需求

车载诊断协议DoIP系列 —— DoIP应用(Application)需求 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师(Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 本就是小人物,输了就是输了,不要在意别人怎么看自己。江湖一…

基于python深度学习的中文情感分析的系统,附源码

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

【Chrono Engine学习总结】4-vehicle-4.2-车辆轨迹跟踪

由于Chrono的官方教程在一些细节方面解释的并不清楚,自己做了一些尝试,做学习总结。 0、Vehicle的driver driver在上一篇总结中有过介绍,【Chrono Engine学习总结】4-vehicle-4.1-vehicle的基本概念,这里进一步介绍。 对于一个…

部分意图分类【LLM+RAG】

在生成人工智能领域工作最有价值的事情之一就是发现新兴技术如何融入新的解决方案。 举个例子:在为北美顶级金融服务公司之一设计对话式人工智能助手时,WillowTree 的数据和人工智能研究团队 (DART) 发现,将意图分类与大型语言模型 (LLM) 结合…

推荐高端资源素材图库下载平台整站源码

推荐高端图库素材下载站的响应式模板和完整的整站源码,适用于娱乐网资源网。该模板支持移动端,并集成了支付宝接口。 演示地 址 : runruncode.com/tupiao/19692.html 页面设计精美,不亚于大型网站的美工水准,并且用户…

【STL】vector模拟实现

vector模拟实现 一、vector函数接口总览二、vector当中的成员介绍三、list模拟实现1、默认成员函数(1)构造函数1(2)构造函数2(3)构造函数3 2、拷贝构造函数(1)写法一:老式…

键盘重映射禁用 CtrlAltDel 键的利弊

目录 前言 一、Scancode Map 的规范 二、禁用 CtrlAltDel 的方法及其缺陷 三、编程实现和测试 3.1 C 实现的简易修改工具 3.2 C# 实现的窗口工具 四、总结 本文属于原创文章,转载请注明出处: https://blog.csdn.net/qq_59075481/article/details…

龙芯开启ssh服务——使用Putty连接

本文采用龙芯3A6000处理器,Loongnix操作系统。 为了能使用其他电脑远程操控龙芯电脑,需要打开loongnix的ssh服务,并在其他电脑里使用putty连接loongnix。 1 修改ssh配置文件 命令行输入: sudo vim /etc/ssh/sshd_config按下i插…

Linux-进程信号

Linux进程信号 初步认识信号信号的存储结构信号的处理方式信号的产生硬件异常产生的信号核心转储sigset_t信号集信号集的操作函数对block表的操作对pending表的操作对handler表的操作信号的捕捉用户态和内核态 信号的处理过程可重入函数volatile关键字 初步认识信号 生活中有哪…

LeetCode、136. 只出现一次的数字【简单,位运算】

文章目录 前言LeetCode、136. 只出现一次的数字【简单,位运算】题目链接与分类思路异或一遍运算 资料获取 前言 博主介绍:✌目前全网粉丝2W,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术…

冲击可以通过峭度指标来检测,是如何来检测的,python示例代码

问题 冲击可以通过峭度指标来检测,是如何来检测的,可以给1个示例代码吗 思路 带冲击的信号其峭度指标>3不带冲击的信号其峭度指标在3左右可以通过滑动窗来检测在哪一段 示例代码 带冲击的信号峭度指标值 import numpy as np import matplotlib.…

2024.02.12

使用STM32Cubemx创建一个工程并且给出每一步的含 选择芯片创建工程 开启调试功能 配置时钟 配置时间树 工程管理 配置仿真器

幻兽帕鲁服务器原来的存档不想玩了,怎么清档?如何重来?

如果需要备份原存档的话,就先把存档导出来备份。或者手动去服务器文件里找到游戏存档文件夹,保存下载。 如无需备份原存档,则可以直接使用幻兽帕鲁应用模板,来重装服务器的操作系统。 方法很简单: 详细教程地…

odoo封装字段widget中无感知刷新数据

常规操作是直接刷新页面 window.location.reload(); 深入源码,发现页面controller层有reload 对应tree的字段widget this.__owl__.parent.parentWidget.__parentedParent.reload(); 对应form的字段widget this.__parentedParent.__parentedParent.reload()

APP inventor零基础移动应用开发

1.Android平台简介 Android由谷歌和开放手机联盟共同创建的一款针对手机的开源软件工具包 主要特色 ---开放性 – 丰富的硬件选择 – 开发商不受任何限制 – 无缝集成互联网服务 App Inventor是由Google公司开发的一款在线开放的Android编程工具软件,通过图形化…