Office Excel VBA遇到的坑

目录

没有开发工具选项卡

VBA各种代码

注释

弹窗

转小写

清除指定区域

获取单元格

修改单元格的值

数字转字符串

字符串去空格

GetAttr

<>

&

AND

获得变量数据类型

检查输入的文件夹名、文件名是否符合Windows的命名规则

VBA各种报错

编译错误:ByRef参数类型不符​​​​​​​


没有开发工具选项卡

文件-选项-自定义功能区,或者在功能区点击鼠标右键-自定义功能区

勾上开发工具

VBA各种代码

注释

单引号

'xxxxx

弹窗

MsgBox "xxxx"

转小写

LCase(Range("B2"))

清除指定区域

    Range("B3:B10000").ClearContents

获取单元格

test = Range("B2")

修改单元格的值

Range("B2").Select
ActiveCell.FormulaR1C1 = "xxxx"

数字转字符串

Str(J)

字符串去空格

Trim(Str(J))

GetAttr

<>

<> 在VB和VBA中相当于数学的不等号 ≠

&

字符串连接

A&B=AB

AND

用于组合多个条件。如果所有条件都为真,AND 计算结果为真。如果任何条件为假,则 AND 计算结果为假

获得变量数据类型

VarType()

检查输入的文件夹名、文件名是否符合Windows的命名规则

Public Function CheckFolderName(FolderName As String) As Boolean
    Dim lngLen As Long
    CheckFolderName = True
    lngLen = Len(FolderName)
    If (Len(Replace(FolderName, "\", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, "/", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, ":", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, "*", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, "?", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, "<", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, ">", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, "|", "")) <> lngLen) Then CheckFolderName = False
    If (Len(Replace(FolderName, """", "")) <> lngLen) Then CheckFolderName = False
End Function
调用方法:

    If Not CheckFolderName("文件夹名或文件名") Then
        MsgBox "不能包含:\ / : * ? < > | " & """"
    End If

VBA各种报错

编译错误:ByRef参数类型不符

调用了一个有参函数,报的如图的错误,有参函数接收的是一个String类型的参数。

在调用有参Function或Sub之前,再使用Dim关键字声明一个临时变量接收,使用此临时变量传参即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值