vba运行结果显示错误13

mydic(myarr(i, 1)) = mydic(myarr(i, 1)) & " " & myarr(i, 2)
你好,我在运行你的那个单条件结果多值查询的程序 结果显示类型不匹配是什么原因呢

VBA写的什么代码,能贴出来嘛,如果是某个博主看来的,建议你私信他,这里回复他看不到

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7428425
  • 这篇博客也不错, 你可以看下VBA完整学习笔记1-39集(共60集)
  • 除此之外, 这篇博客: 【VBA编程】VBA基础语法(一)中的 3、声明多维数组 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
    Dim 名称 (x to y, n to m)
  • 您还可以看一下 陈表达老师的VBA基础编程开发课程课程中的 第39集-二维数组数据处理小节, 巩固相关知识点
  • 以下回答来自chatgpt:

    可能引起错误13的常见原因如下: 1. 变量类型不匹配,比如将字符串赋值给数字变量。 2. 数组索引超限,比如访问了不存在的索引。 3. 对象类型不匹配,比如将一个Worksheet对象赋值给一个Chart对象变量。 4. 函数返回值类型不匹配,比如将一个返回字符串的函数赋值给一个数字变量。 5. 代码中出现了特殊字符或者格式错误,比如拼写错误、缺失括号、少打了等号等。

    针对以上可能引起错误13的常见原因,可以采取以下具体解决方案: 1. 检查变量类型是否正确,如果不正确则修改变量类型。 2. 检查访问的数组索引是否超限,如果超限则修改代码。 3. 检查对象类型是否匹配,如果不匹配则修改对象类型。 4. 检查函数返回值类型是否正确,如果不正确则修改变量类型。 5. 仔细检查代码,查找是否有拼写错误、缺失括号等格式错误,如果有则进行修改。

    如果以上方法都不能解决问题,则可以尝试将代码进行调试,逐行执行代码,查找错误所在。可以使用VBA中的调试工具(比如断点、Watch窗口等)来帮助查找问题。同时还可以在出错的位置添加日志输出等代码,查看具体出错的位置和值等信息。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^