阅文时长 | 0.34分钟 字数统计 | 550.4字符
主要内容 | 1、引言&背景 2、分析&解决原理 3、声明与参考资料
『VBA·编译错误:ByRef参数类型不符』
编写人 | SCscHero 编写时间 | 2021/8/19 AM12:3
文章类型 | 系列 完成度 | 已完成
座右铭 每一个伟大的事业,都有一个微不足道的开始。

一、引言&背景   完成度:100%

a) 应对问题

博主在Word VBA中今天写代码的时候,发现报了个编译的错误,如下图。检查了一下参数应该是正确的。

b) 应对场景

  1. 博主是调用了一个有参函数,报的如图的错误,有参函数接收的是一个String类型的参数。
  2. 在调用有参Function或Sub的时候。

c) 解决方法

通过第二章节的理解,在调用有参Function或Sub之前,再使用Dim关键字声明一个临时变量接收,使用此临时变量传参即可

二、分析&解决原理   完成度:100%

a) Dim的使用理解

在Google了一下后,博主发现问题出在调用有参的Function或者Sub的时候,传入的参数一定是需要使用Dim关键字声明类型的。先说下Dim声明关键字类型的一个坑。以下为三种声明多变量的常用写法。

'写法1:多行分别声明变量
Dim strV1 As String
Dim strV2 As String
Dim strV3 As String'写法2:单行声明变量,单独声明类型
Dim strV1 As String,strV2 As String,strV3 As String'【有隐患】写法3:单行声明变量,只声明一个类型
Dim strV1,strV2,strV3 As String

此三种写法,前两种是等价的。但第三种,实际上strV1,strV2没有被声明变量。

b) 误区

开始学习VBA的时候,对VBA中一些非对象的数据类型,可以直接声明,可以省略Dim声明。写法也习惯了,没意识到这个错误。但即使是非对象数据类型String,在调用之前也是需要声明的。

三、声明与参考资料   完成度:100%

原创博文,未经许可请勿转载。

如有帮助,欢迎点赞、收藏、关注。如有问题,请评论留言!如需与博主联系的,直接博客私信SCscHero即可。

VBA·编译错误:ByRef参数类型不符相关推荐

  1. 关于VB提示ByRef参数类型不符的分析

    在VB中执行过程或函数时,提示"ByRef参数类型不符" 分析问题主要由于对应参数的类型不符造成的.造成这种情况一般有几种情况: 1.传递参数未定义类型,如果参数在调用前未定义类型 ...

  2. VB问题——ByRef参数类型不符

    **## vb问题--ByRey参数类型 今天上午学习vb关于过程的这一章节时,在敲书中例子时,由于我的不小心,把其中两个代码给敲错了,引发了下面图中的问题. 然后,我就去查找相关资料,寻求什么叫By ...

  3. c语言无效参数视为严重错误,C语言编译错误:错误:‘-’参数类型无效(有‘int’)...

    一.编译错误代码: #include int main() { #define offsetof(type, member) ((size_t) &((type *)0->member) ...

  4. ADODB.Recordset 错误 '800a0bb9' 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。

    错误提示: 除了度娘给出的错误-解决办法外,可能存在以下原因哦: 没有连接数据库!! set conn = Server.CreateObject("ADODB.Connection&quo ...

  5. ADODB.Recordset 错误 #x27;800a0bb9#x27; 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。

    ADODB.Recordset 错误 '800a0bb9' 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突. 下面是代码: <% name=request("text2&q ...

  6. 新手提问!求解答QAQADODB.Recordset 错误 #x27;800a0bb9#x27; 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。

    ADODB.Recordset 错误 '800a0bb9' 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突. <%@LANGUAGE="VBSCRIPT" COD ...

  7. [UE4]OnComponentBeginOverlap.AddDynamic 的编译错误

    以 Character 类为例,假设有 PacManCharacter 派生自 Character类 首先在 PacManCharacter.h 头文件中添加碰撞函数的声明: OnCollision ...

  8. php declaration of,PHP 7.2中的新功能(参数类型声明)

    PHP 7.2已于 11月30日正式发布,该版本具有新特性,功能和改进,可以让我们编写更好的代码.在这篇文章中,我将介绍一些PHP 7.2中最有趣的语言特性-参数类型声明. 参数类型声明 从PHP 5 ...

  9. php7 参数类型限定,PHP 7.2新特性:参数类型声明(附代码)

    php7.2版本具有新特性,功能和改进,可以让我们编写更好的代码,下面的文章中我将介绍php7.2中的一个新的功能:参数类型声明,话不多说,让我们来具体看看正文内容. 参数类型声明 从PHP 5开始, ...

最新文章

  1. 《你不知道的Javascript--上卷 学习总结》(原型)
  2. 开发html5的共享单车,HTML5 SVG 共享单车(小蓝车)动画
  3. java的几种对象(PO,VO,DAO,BO,POJO)解释
  4. si9000阻抗匹配计算_如何在设计之初计算出两层PCB板差分线的阻抗,线宽,间距...
  5. 实现多线程的方式之实现Callable接口
  6. mysql日期时间操作函数详解
  7. 高仿阴阳师官网轮播图效果的jQuery插件
  8. SpringMVC中使用@RequestBody,@ResponseBody注解实现Java对象和XML/JSON数据自动转换)
  9. grpc框架_grpc的入门使用
  10. Asp.net 1.0与ASP.NET 2.0的异同
  11. Linux mysql 主从复制
  12. 懵圈了,面试官问一个 TCP 连接可发多少个 HTTP 请求?
  13. 多线程--对象及变量的并发访问
  14. 世界时区缩写及代表的地区
  15. PostgreSQL column cryptographic use pgcrypto extension and optional openssl lib
  16. vax与vay的区别
  17. win10内置ubuntu, 启动时提示“指定的网络名不再可用”解决办法
  18. 【随笔】小记2014年东北四省赛
  19. 【论文精读1】CSDI: Conditional Score-based Diffusion Models for Probabilistic Time Series Imputation
  20. 如何提高电商广告投放的转化率?

热门文章

  1. matlab读入三维点云数据斯坦福兔子
  2. 敬业签云便签提示“基础连接已关闭,发送时发生错误!”如何解决
  3. mac系统下启用root用户
  4. 从轻测到上线,WeTest与《一起来捉妖》测试方案大公开
  5. 美国音乐学院计算机音乐专业排名2015年,美国音乐学院排名小提琴专业排名大全(本科)...
  6. 英语钻石法则(六)-----学习地道、实用的材料
  7. 计算机视觉笔记11.26
  8. 复杂的1秒--图解Google搜索技术
  9. 图像处理学习2,边缘检测1(sobel算子,kirsch算子)
  10. 多台路由器,不同网段的设备之间如何互访?