ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > VBA中Erase语句能实现怎么样的效果?

VBA中Erase语句能实现怎么样的效果?

作者:绿色风 分类: 时间:2022-08-17 浏览:110
楼主
wise
Q:VBA中Erase语句能实现怎么样的效果?
A:Erase语句能重新初始化大小固定的数组的元素,以及释放动态数组的存储空间,即Erase可以删除静态数组和动态数组里的数据元素。
见下例:
  1. Sub Erase1()
  2.     Dim arr(1 To 50) As Integer
  3.     arr(1) = 1
  4.     MsgBox arr(1)
  5.     MsgBox UBound(arr)
  6.     Erase arr
  7.     MsgBox arr(1)
  8.     MsgBox UBound(arr)
  9. End Sub

Erase语句.rar
2楼
rongjun
学习了
3楼
bluexuemei
学习ERASE语句!
4楼
水星钓鱼
学习了
5楼
無心
我来学习一下


6楼
0Mouse
我的理解是,对于静态数组,Erase只是清空数组中的所有数据,维度不变,而对于动态数组而言,Erase不光是清空数据,维度也同时恢复默认的Arr()。
  1. Sub xqoa()
  2.     Dim arr(1 To 5), brr()
  3.     arr(1) = 1
  4.     Stop
  5.     Erase arr    'arr还是保持一维不变
  6.     Stop
  7.     ReDim brr(1 To 4, 1 To 2)    '这里是2维
  8.     brr(1, 1) = 1
  9.     Stop
  10.     Erase brr    '此时恢复成brr()了,不是2维
  11.     Stop
  12. End Sub

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap