EXCEL和VBA如何改变字母大小写 和 大小写互换?我写的自定义函数

目录

1 EXCEL里改变大小写的内置函数

2.1 转换大小写的函数

2.2 神奇的把数字和中文大小写转换的函数

2 VBA里改变大小写的内置函数

2.1 改变大小写 的内置函数

2.2 使用 excel的WorksheetFunction. text() 函数

3 如果想交换字母的大小写呢?

3.1 ASCII码里的大写字母和小写字母

3.2 怎么把字符串string 像数组一样切片呢?

3.3 VBA的 字符转ASCII码和 ASCII转字符的两个函数

3.4  自定义函数,大小写互换  test_tran1(a)


1 EXCEL里改变大小写的内置函数

2.1 转换大小写的函数

  • upper()         '全部改大写
  • lower()          '全部改小写
  • proper()        '首字母大写
  • code()          'excel里查看字母asc码的函数

2.2 神奇的把数字和中文大小写转换的函数

  • NUMBERSTRING()  
  • 参数只可选1,2,3

  • NUMBERSTRING(A8,1)       ' 转成小写汉字,且是数量单位
  • NUMBERSTRING(A8,2)       ' 转成大写汉字,且是数量单位
  • NUMBERSTRING(A8,3)       ' 转成小写汉字

 

2 VBA里改变大小写的内置函数

2.1 改变大小写 的内置函数

  • UCase()            '所有小写改大写
  • lCase()              '所有大写改小写
  • VBA里,使用 worksheetfuction.upper()   worksheetfuction.lower() 是不行的

2.2 使用 excel的WorksheetFunction. text() 函数

  • WorksheetFunction.Text(rng.Text, "[DBNum1]")
  • WorksheetFunction.Text(rng.Text, "[DBNum2]")

3 如果想交换字母的大小写呢?

目标:如果想大小写互换:也就是把大写字母改成小写,而小写字母改成大写,怎么做?

先理清思路

  • 搞清楚大写字母和小写字母的区别
  • 如何逐个从字符串数组里取每个字符?
  • 如何转化单个字符,且放回去?

3.1 ASCII码里的大写字母和小写字母

  • 搞清楚大写字母和小写字母的区别
  • 在 ASCII码里,大写字母和小写字母可以对应位不同区间段的数字
  • 大写字母A-Z, 65-90
  • 小写字母a-z, 97-122
  • 因此只要判断了这个字符的acsii码值,就知道其是大写还是小写!

3.2 怎么把字符串string 像数组一样切片呢?

  • python可以 string[1] 这样取
  • 但是vba里不行
  • 但是其实用 mid(string, i ,1 ) 也可以取每个字符

3.3 VBA的 字符转ASCII码和 ASCII转字符的两个函数

  • chr()            'ASCII转字符
  • asc()            '字符转ASCII码

3.4  自定义函数,大小写互换  test_tran1(a)

  • 搞清楚大写字母和小写字母的区别
  • 把字符串看成一个数组,
  • 如何逐个从字符串数组里取每个字符
  • 如何转化单个字符,且放回去
  • 取最后的结果
Function test_tran1(a)'好像vba里字符串不能直接这样切片a[],只能用 mid()?For i = 1 To Len(a)'用ASC() 而不是chr() 更不是WorksheetFunction.codeIf Asc(Mid(a, i, 1)) >= 97 And Asc(Mid(a, i, 1)) <= 122 ThenMid(a, i, 1) = UCase(Mid(a, i, 1))      '用这个不行worksheetfunction.upper()ElseIf Asc(Mid(a, i, 1)) >= 65 And Asc(Mid(a, i, 1)) <= 90 ThenMid(a, i, 1) = LCase(Mid(a, i, 1))End IfNexttest_tran1 = aDebug.Print a
End FunctionSub testtt1()a = "abcABC"test_tran1 (a)
End Sub

 

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

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

相关文章

MongoDB数据库安装

MongoDB数据库 MongoDB数据的特点&#xff1a; 面相文档存储的分布式数据库 具有很强的扩展性 支持丰富的查询表达式&#xff0c;很接近于关系性数据库 使用类似于json的结构保存数据&#xff0c;可以轻易的查询到文档中内嵌的对象及数组 下载安装包 首先去官网下载安装…

Spring高手之路7——事件机制与监听器的全面探索

文章目录 1. Spring中的观察者模式2. 监听器2.1 实现ApplicationListener接口创建监听器2.2 EventListener注解创建监听器2.3 对比ApplicationListener接口和EventListener注解的创建方式 3. Spring的事件机制3.1 ApplicationEvent3.2 ApplicationContextEvent3.3 ContextRefre…

MyBatis何时使用一级缓存,何时使用二级缓存?

Mybatis设计2级缓存来提升数据检索效率&#xff0c;避免每次都查询数据库。 一、一级缓存 一级缓存 Mybatis 的一级缓存是指 SQLSession&#xff0c;一级缓存的作用域是 SQlSession , Mabits 默认开启一级缓存。 在同一个SqlSession中&#xff0c;执行相同的SQL查询时&#x…

Open ai 开发指南:gpt接口的第一个问答机器人demo

目录 内容 Python代码 C 代码 workspace 文件 BUILD文件 Java 代码 maven文件 执行效果 &#xff08;PS&#xff1a;CSDN上相关的内容无法发布&#xff0c;有需要的朋友私信我直接全套发送给你&#xff09; 内容 基于openai接口实现循环gpt问答&#xff0c;并使用一个…

Unity VR开发教程 OpenXR+XR Interaction Toolkit(八)手指触控 Poke Interaction

文章目录 &#x1f4d5;教程说明&#x1f4d5;XR Poke Interactor&#x1f4d5;与 UI 进行触控交互⭐添加 Tracked Device Graphic Raycaster 和 XR UI Input Module 让 UI 可被交互 &#x1f4d5;与物体进行交互⭐XR Simple Interactable⭐XR Poke Filter 往期回顾&#xff1a…

微信小程序web-view嵌入uni-app H5页面,通过H5页面跳转其他小程序如何操作?

1、H5页面代码 wx.miniProgram.reLaunch({ url: /pages/index/index?appId${您的微信小程序appId} });//触发小程序刷新页面获取appId 微信小程序appId查看方法&#xff1a; 1&#xff09;有后台登录权限的情况下&#xff1a;登录微信公众平台后&#xff0c; 微信公众平台微信…

Diffusion扩散模型学习2——Stable Diffusion结构解析-以文本生成图像为例

Diffusion扩散模型学习2——Stable Diffusion结构解析 学习前言源码下载地址网络构建一、什么是Stable Diffusion&#xff08;SD&#xff09;二、Stable Diffusion的组成三、生成流程1、文本编码2、采样流程a、生成初始噪声b、对噪声进行N次采样c、单次采样解析I、预测噪声II、…

nuxt 设置i18n后多语言文件不会动态更新

nuxt 设置i18n后多语言文件不会动态更新 昨天遇到的一个问题&#xff0c;然后研究了一整天&#xff0c;今天才得到解决 nuxt 设置i18n多语言时多语言文件不会动态更新 我的原始代码如下&#xff1a; {modules: [nuxtjs/i18n,],i18n: {locales: [{code: en,iso: en-US,name:…

【GitLab私有仓库】在Linux上用Gitlab搭建自己的私有库并配置cpolar内网穿透

文章目录 前言1. 下载Gitlab2. 安装Gitlab3. 启动Gitlab4. 安装cpolar5. 创建隧道配置访问地址6. 固定GitLab访问地址6.1 保留二级子域名6.2 配置二级子域名 7. 测试访问二级子域名 转载自远控源码文章&#xff1a;Linux搭建GitLab私有仓库&#xff0c;并内网穿透实现公网访问 …

go mod tidy 提示错误 go mod tidy -go=1.16 go mod tidy -go=1.17

错误概览 执行 go mod tidy 时&#xff0c;提示如下错误 > go mod tidy github.com/myrepo/myproj importsgo.k6.io/k6 importsgo.k6.io/k6/cmd importsgithub.com/fatih/color loaded from github.com/fatih/colorv1.12.0,but go 1.16 would select v1.13.0To upgrade to t…

人工智能(pytorch)搭建模型11-pytorch搭建DCGAN模型,一种生成对抗网络GAN的变体实际应用

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能(pytorch)搭建模型11-pytorch搭建DCGAN模型&#xff0c;一种生成对抗网络GAN的变体实际应用&#xff0c;本文将具体介绍DCGAN模型的原理&#xff0c;并使用PyTorch搭建一个简单的DCGAN模型。我们将提供模型…

荔枝集团战队斩获 2023 Amazon DeepRacer自动驾驶赛车企业总决赛冠军

6月27日&#xff0c;2023 Amazon DeepRacer自动驾驶赛车企业总决赛在上海决出了最终结果&#xff0c;荔枝集团“状元红”战队与Cisco、德勤管理咨询、北京辛诺创新、神州泰岳、敦煌网等12支队伍的竞逐中&#xff0c;在两轮比赛中成绩遥遥领先&#xff0c;最终斩获桂冠。而今年年…