单元格操作

Range("C4") = 1 '很直观,不用多解释了吧
[C4] = 1 '跟Range差不多,但更简洁
Cells(4,3) = 1 'Cells有2个参数Rowindex和ColumnIndex,分别是行号和列号。注意是先行后列
'Sheets(1).Range("A1").Value = 1 '使用 Sheets(index)访问工作表(其中 index 是工作表名称或索引号),这两句和上面的Range("A1")=1的结果一样

连续的单元格
[A3:C5] = 2
Cells(11, 1).Resize(2, 3) = 4 'Cells(11,1)返回单元格A11,然后Resize(2,3)把A11向下扩展2行,向右扩展3列,返回区域A11:C12。
Range("C13:E23", "H7:J9") = 3
不连续的单元格
[A18,A20,B19:C19] = 6 '可以用多个逗号分割多个不连续的区域
Range("C13:E23,H7:J9") = 3
参数化
Range(Chr(64 + C1) & R1 & ":" & Chr(64 + C2) & R2) = 10 '这句和上面一句实现的功能一样,都是设置F7:H9的值为10。
字符串操作

字符串函数

Trim(string) '去掉string左右两端空白 
Ltrim(string) '去掉string左端空白 
Rtrim(string) '去掉string右端空白 
Len(string) '计算string长度 
Left(string, x) '取string左段x个字符组成的字符串 
Right(string, x) '取string右段x个字符组成的字符串 
Mid(string, start,x) '取string从start位开始的x个字符组成的字符串 
Ucase(string) '转换为大写 
Lcase(string) '转换为小写 
Space(x) '返回x个空白的字符串 
Asc(string) '返回一个 integer,代表字符串中首字母的字符代码 
Chr(charcode) '返回 string,其中包含有与指定的字符代码相关的字符
UBound
字符串比较

Dim strFixedLong As String*100 '定长字符串
StrComp(string1,string2[,compare])
Compare:vbBinaryCompare/0则二进制进行比较;vbTextCompare/1则进行文本进行比较;vbDatabaseCompare/2则适用Microsoft Access,进行基本数据库信息的比较
返回值:String1<String2,则返回值为-1,=则0,>则1,其中有一个为NULL则为NULL
Sub testStringCompare()
  Dim MyStr1 As String, MyStr2 As String
  Dim MyComp1 As Integer, MyComp2 As Integer, MyComp3 As Integer, MyComp4 As Integer
  MyStr1 = "ABCD"
  MyStr2 = "abcd"
  MyComp1 = StrComp(MyStr1, MyStr2, 1)    '返回 0
  MyComp2 = StrComp(MyStr1, MyStr2, 0)    '返回 -1
  MyComp3 = StrComp(MyStr1, MyStr2)       '返回 -1
  MyComp4 = StrComp(MyStr2, MyStr1) & apos  '返回1
  MsgBox "StrComp(MyStr1, MyStr2, 1)的结果为:" & MyComp1
  MsgBox "StrComp(MyStr1, MyStr2, 0)的结果为:" & MyComp2
  MsgBox "StrComp(MyStr1, MyStr2)的结果为:" & MyComp3
  MsgBox "StrComp(MyStr2, MyStr1)的结果为:" & MyComp4
End Sub
字符串转换

StrConv(string,conversion,LCID)
conversion参数:vbUpperCase/1,将字符串转换成大写
  vbLowerCase/2,则将字符串转换成小写;
  vbProperCase/3,则将字符串中每个字的开头字母转换成大写;
  vbUnicode/64,则根据系统的缺省码页将字符串转换成Unicode;
  vbFromUnicode/128,则将字符串由Unicode转换成系统的缺省码页。
Sub testConverseString()
  Dim i As Long
  Dim x() As Byte
  x = StrConv("ABCDEFG", vbFromUnicode)   '转换字符串。
  For i = 0 To UBound(x)
    Debug.Print x(i)
  Next
End Sub

Sub Test()
  Dim byArray() As Byte
  Dim sString As String
  sString = "Some stuff"
  byArray = StrConv(sString, vbFromUnicode)
End Sub

转换成字符串类型

MyDouble = 437.324   ;MyDouble 为 Double 类型
MyString = CStr(MyDouble)    ;MyString 的内容为"437.324"

说明:传递给CStr的未初始化的数字数据类型返回“0”,传递给CStr的未初始化的日期变量返回“0:00:00”。
Sub CreateString1()
  Dim MyString  '返回 10 个空格的字符串。
  MyString = Space(10) '将 10 个空格插入两个字符串中间。
  MyString = "Hello" & Space(10) & "World"
  MsgBox "" & MyString
End Sub

字符串生成

Space(number)
String(number,character)

excel中VBa应用总结相关推荐

  1. python和vba操作excel_python调用excel中VBA代码

    python中调用excel中的VBA代码,本机需要安装python以及该python版本对应的"pywin32-214.win32-py2.5.exe" #!/usr/bin/e ...

  2. c语言运行excel中vba程序,VBA代码在WPS上可运行,在EXCEL中报错

    本人是一名VBA爱好者兼VBA小白,因工作需要,最近想要做1个EXCEL模板,通过VBA代码自动调用浏览器下载数据,导入EXCEL中进行处理.但在编写VBA代码过程中发现,同样的代码在WPS中可以运行 ...

  3. Excel中VBA编程学习笔记(一)

    1.注释及编码规则 注释: 单引号:可以位于句子结尾或者单独一行: Rem:单独一行 编码规则: 如果VB中的关键字是由多个英文字母组成,则系统自动将每个单词的首字母转换成大写字母,其余字母一律转换成 ...

  4. Excel中vba 立即窗口使用方法详细介绍

    我们在VBE立即窗口中输入命令,回车后立即运行,估计这就是"立即窗口"的由来吧.对Excel感兴趣的朋友可加Excel学习交流群:284029260 第一,如何显示vba 立即窗口 ...

  5. Excel中VBA操作工作表相关

    VBA中已有工作簿合并表格数据 Sub 合并目录所有工作簿全部工作表() On Error Resume Next Dim MP, MN, AW, Wbn, wn Dim Wb As Workbook ...

  6. 提高Excel中VBA效率的四种方法

    由于Microsoft Office办公套件的广泛应用,以及该软件版本的不断提升,功能不断完善,在Office办公套件平台上开发出的的VBA应用程序越来越多,而VBA是一种宏语言,在运行速度上有很大的 ...

  7. 在EXCEL中VBA编程检验身份证号码有效性

    *2022-12-05 改正代码中错别字,规范表述 *2022-11-30 1.增加了过程clearB()用来清除B1:Bx原有的出错说明,在过程examIdentityCard() 开头调用 2.修 ...

  8. Excel 中VBA 合并报表案例

    今天财务小姐姐找到我,让我帮忙用VBA 写一个合并文件夹下的Excel 文件(*.xlsx  和 *.xls),方便她整理报表. 需求如下:所有源文件有三个sheet,其中第一个sheet 需要合并, ...

  9. Excel中VBA编程学习笔记(十一)--正则表达式

    在VBA中使用正则表达式受限需要引用Microsoft VBScript Regular Expressions 5.5类库.在VBA界面,"工具"-->"引用&q ...

  10. 解决Excel中VBA批量打印速度慢的问题

    iamlaosong文 VBA循环打印对账单时,循环一次发出一个打印命令(本应用只打印一页),导致打印速度很慢,时间都浪费在电脑与打印机握手上面了.要解决这个问题,一种方法是打印前将内容合并,另一种方 ...

最新文章

  1. Solaris和Linux的比较、区别、异同云云。。。
  2. Spring Cloud实战小贴士:Zuul的饥饿加载(eager-load)使用
  3. 信号内插matlab,声音信号的抽取和内插,MATLAB代码
  4. 四则运算计算器的微信小程序_1 界面
  5. MATLAB 图像处理函数(第六章)(获取图像矩形像素的运用)
  6. java日期格式精确到分_详解Java日期格式化及其使用例子
  7. AcWing 3195. 有趣的数
  8. 后端开发 java_Java后端开发三年,你不得不了解的JVM
  9. 95-30-017-Channel-NioServerSocketChannel
  10. Dockerfile怎么创建镜像
  11. setInterval 和 setTimeout
  12. 创建 Agg 静态链接库
  13. java 生成纯色图片_浅谈Java设置PPT幻灯片背景——纯色、渐变、图片背景
  14. python几个循环_python 几个循环的效率测试
  15. python开发要学什么_运维为什么要学编程?编程为什么是Python?
  16. #12304;#9733;#28404;#28404;#37329;#34701;#23458;#26381;#30005;#35805;#9733;#12305;
  17. 如何使CAD打印PDF显示清楚
  18. 传智播客C语言视频第二季(第一季基础上增加诸多C语言案例讲解,有效下载期为10.5-10.10关闭)...
  19. DataOps: A New Discipline 数据治理的下一步
  20. 鹰眸安全帽识别系统对施工现场管理水平的提升

热门文章

  1. 风机桨叶故障诊断(四) 正负样本准备——从图像中随机扣图
  2. WKWebView概述
  3. jdbc mysql myeclipse_关于JDBC连接MySQL的问题,我一直解决不了(Myeclipse 环境下)
  4. 改变mysql的菜单栏的颜色_导航条——动态改变导航菜单的背景颜色
  5. python总结教程_python基础教程总结10——文件
  6. java修改配置文件参数_在java类中获取在.properties配置文件中设置的参数
  7. C语言编程日志,用C语言打印日志(Log)
  8. java网络篇-tcp的握手和挥手!
  9. cups共享linux打印机_linux入门-映射网络驱动器
  10. 2007年上半年软件测试_洪恩教育成功登陆纽交所,上市首日大涨超33%!成2020年首家美股上市的中国教育公司...