在excel中按ALT+F11打开VBA编辑器,选择插入模块

在模块中输入下面代码:

Sub 名称和识别子生成()' 正规表示Dim oRegExp As ObjectDim shtCount As IntegerIf ActiveSheet.Cells(2, 1).Value <> "" ThenshtCount = ActiveSheet.Cells(1, 1).End(xlDown).RowDim i As IntegerFor i = 2 To shtCountSet oRegExp = CreateObject("vbscript.regexp")oRegExp.Global = TrueoRegExp.IgnoreCase = FalseoRegExp.Pattern = "[^a-zA-Z0-9]"ActiveSheet.Cells(i, 3).Value = Replace(oRegExp.Replace(ActiveSheet.Cells(i, 1).Value, ""), " ", "")ActiveSheet.Cells(i, 4).Value = 识别子(ActiveSheet.Cells(i, 1).Value)Next iSet oRegExp = NothingMsgBox "名称和识别子生成成功!"End IfEnd SubSub 识别子生成名称()Dim shtCount As IntegerIf ActiveSheet.Cells(2, 1).Value <> "" ThenshtCount = ActiveSheet.Cells(1, 1).End(xlDown).RowDim j As IntegerFor j = 2 To shtCountDim result As StringDim strArray() As StringstrArray = Split(ActiveSheet.Cells(j, 1).Value, "_")Dim i As IntegerFor i = 0 To UBound(strArray)If i = 0 Thenresult = strArray(i)Elseresult = result & UCase(Left(strArray(i), 1)) & Right(strArray(i), Len(strArray(i)) - 1)End IfNext iActiveSheet.Cells(j, 3).Value = resultNext jEnd IfMsgBox "识别子生成名称成功!"
End SubFunction 识别子(str As String) As StringDim tempString As StringIf Trim(str) <> "" ThenDim wordArray() As StringwordArray = Split(Trim(str), " ")Dim j As IntegerFor j = 0 To UBound(wordArray)If wordArray(j) <> UCase(wordArray(j)) ThenDim outWord As StringoutWord = ""Dim byteArray() As StringReDim byteArray(1 To Len(wordArray(j)))Dim i As IntegerFor i = 1 To Len(wordArray(j))byteArray(i) = Mid(wordArray(j), i, 1)If byteArray(i) Like "[A-Z]" And i <> 1 ThenbyteArray(i) = " " & LCase(byteArray(i))ElsebyteArray(i) = LCase(byteArray(i))End IfoutWord = outWord & byteArray(i)Next iwordArray(j) = outWordElsewordArray(j) = LCase(wordArray(j))End IftempString = tempString & wordArray(j) & " "Next jtempString = Left(tempString, Len(tempString) - 1)' 正则表示Dim oRegExp As ObjectSet oRegExp = CreateObject("vbscript.regexp")oRegExp.Global = TrueoRegExp.IgnoreCase = FalseoRegExp.Pattern = "[^a-zA-Z0-9 ]"识别子 = LCase(Replace(oRegExp.Replace(tempString, ""), " ", "_"))Set oRegExp = NothingEnd If
End Function

然后,在EXCEL文件里按ALT+F8,会出现模块中的宏代码

点击执行就可以将图中名称转换,或是点击选项设置快捷键,以后按快捷键自动转换

输入q(小写q)则快捷键就是CTRL+Q

输入Q(大写Q)则快捷键就是CTRL+SHIFT+Q

也可以插入形状,然后右键选择指定宏也可

VBA实现驼峰法变量名转换成下横杠式变量名相关推荐

  1. c语言int转换成float,int怎么转化为float 将 int型变量n转换成float型变量的方法是...

    请问C语言中如何将int转换为float 将 int型变量n转换成float型变量的方法是 A float n B (float )n C float( n) D( float) ( n)不懂小编的人 ...

  2. excel 如何将带杠的日期转换成不带杠的格式

    我们在日常工作中经常会遇到excel表格中日期不统一的烦恼,而且每个人操作习惯的格式也不一样,或者excel计算或者匹配也对时间格式要求严格,今天给大家分享一个常用的时间转换小技巧. 如何将带杠的日期 ...

  3. 文件下载时设置文件名以及中文被转换成下划线的解决办法

    文件下载时中文被转换成下划线的解决办法 先上问题 解决办法很简单,直接在返回的时候加以下代码 response.setContentType("application/force-downl ...

  4. JS用正则把双反斜杠\\转换成正斜杠/

    把双反斜杠\\转换成正斜杠/ tempPath = "旧字符串\\\\".replace(/\\/g, "/"); webosName = "webo ...

  5. excel vba 如何将日期周几转换成文字_Excel 从精通到入门

    Excel 从精通到入门 引子 Excel? 这么简单的东西有学的必要吗?公式加减乘除,诶等等这个日期怎么变成 #### 了,虽然文本数字搞不清楚,但也算熟练使用 Excel 啦. WOW, Awso ...

  6. 乘2取整法_十进制小数转换成二进制小数,可以采用“乘2取整”法

    [判断题]用户Administrator是系统最权威的管理员 [判断题]字长是计算机进行处理时,一次存取.加工和传送的数据长度 [判断题]在Windows"资源管理器"窗口中,按住 ...

  7. C语言-递归法将一个数字转换成字符串

    任务描述 本关任务:用递归法将一个整数 n (任意位数的整数)转换成字符串,并输出,各个字符之间用空格隔开. 例如,输入483,应输出字符串4 8 3. 测试输入:123456789 预期输出:1 2 ...

  8. java 带横杠或下划线_的数据库字段变驼峰,比如ID_CARD_INFO_TITLE转换成idCardInfoTitle

    有个需求需要将数据库字段转换成驼峰字段,在网上找了一会这方面的工具, 写代码嘛,有现成的最好,但发现都写的乱七八糟, 有的各种引用工具类,有的是正则匹配来匹配去最后给出的结果还不对. 于是自己写了一个 ...

  9. excel vba 如何将日期周几转换成文字_这5个超实用的Excel技巧,让你的办公效率更高...

    导读:对于办公职员来说,Excel是几乎每天都会接触的办公软件.在Excel中,有非常多的小技巧,学习这些小技巧需要不断的积累和应用,今天指北针就来给大家分享5个超实用的Excel技巧,让办公变得更加 ...

最新文章

  1. hadoop下的Kmeans算法实现
  2. 学习的过程和挖矿其实很像
  3. python面对对象编程------3:写集合类的三种方法
  4. 双刃剑与灰色地带:“泄露数据收藏家”的素描
  5. 【斜率优化】Cats Transport(luogu-CF 311B)
  6. 如何使用webrtc 一
  7. c语言程序设计扫雷游戏实验报告,C语言程序设计扫雷游戏实验报告.pdf
  8. mxnet 训练--如何生成rec 数据 +自己在本机测试的结果
  9. Picasso 图片库图片渐显效果的实现
  10. mysql中计算日期整数差
  11. Android 基础控件与线性布局
  12. python爬取酷狗音乐付费音乐包_一篇文章教会你使用Python网络爬虫下载酷狗音乐...
  13. 为IntelliJ IDEA安装EmmyLua插件
  14. 多个安卓设备投屏到电脑_手机投屏软件哪个好,如何将手机屏幕投屏到电脑?...
  15. 【MIPS汇编编程练习Lab5】汇编中的条件语句 大于小于比较 if-else statement slt
  16. 二期:Combined Scorecards
  17. 选择视频直播SDK的4项技术指标,5项基本能力
  18. 2021-03-22
  19. Linux磁盘扩容的操作
  20. 马士兵python_马士兵老师的python入门教程

热门文章

  1. 基础练习16-分解质因数
  2. ultraiso安装matlab,ubuntu U盘安装教程:UltraISO采用U盘安装ubuntu12.10
  3. 科学家风采 | 2022 ACM杰出会员揭榜:本刊编委陈恩红教授入选!
  4. 【快速上手教程1】疯壳·开源编队无人机-开机测试
  5. 4735: C语言循环水题2
  6. 解析大多数WordPress用户都选择托管虚拟主机的原因
  7. python实现数据恢复软件_恢复python
  8. Python-使用正则表达式爬取斗破苍穹小说文字内容(使用Requests库实现)
  9. 清空 通讯录 android,安卓 通讯录 清除数据恢复
  10. linux看视频插件,Linux系统下安装Adobe Flash Player插件观播放视频