• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

奋斗中...

曾经的程序员。ASP.NET/C#, JavaScript, PL/SQL, T-SQL; 工具: VS2003/2005, Oracle, SQLServer; 偶尔写点CSS, 批处理.
头脑中经常有新想法, 可惜没有去实现.
Never give up.
Never get into a fight with a pig. Both of you will get dirty. But the pig actually enjoys it.
  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

关于vba的“不能给数组赋值”错误(转载)

整理自https://zhidao.baidu.com/question/418213674.html的一个好答案。

 

首先,要了解“不能给数组赋值”这个错误产生的根源,是由于程序要改变固定数组的大小引起的,比较常见的是有些函数、方法的返回值是一个数组,它们会自动设置用于接受数据的数组的大小,如果用固定数组去接收就会产生这个错误。
所以解决方案就是,Array 函数返回一个包含数组的 Variant,所以你定义函数K的时候不能指定大小,要写成k As Variant或者k() As Variant。

另外,149005501 表述有误,VB不限制数组下标从哪里开始。使用 Array 函数创建的数组的下界受 Option Base 语句指定的下界的决定,在form模块开头加入Option Base 1循环里的代码就不用改,不加的话要写成k(3 * (i - 1) + j-1) 。

posted on 2023-11-07 00:15  jes  阅读(990)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3