当前位置: 首页 > news >正文

【VBA编程】09.使用Excle集合对象

使用Workbooks工作簿集合、工作簿对象、工作表集合、工作表对象,并且观察使用Add方法前后工作簿与工作表数目的变化

【代码区域】

Sub 测试集合工作簿()
    Dim wbs As Workbooks '保存工作簿集合
    Dim wb As Workbook   '保存工作簿对象
    Dim ws As Worksheet  '保存工作表对象
    Dim wbscount As Integer '保存工作簿集合中对象数目
    Dim wscount As Integer  '保存工作表集合中的对象数目
    Dim i As Integer
    Set wbs = Application.Workbooks '获取当前工作簿数目
    wbscount = wbs.Count '获取工作簿集合中的元素
    Debug.Print
    Debug.Print "添加工作簿之前,工作簿的数目为:" & wbscount
    Debug.Print "添加前各工作簿名称如下:";
    For Each temp In wbs
        Debug.Print temp.Name & " ";
    Next
    wbs.Add               '向工作表中添加元素
    wbscount = wbs.Count
    For i = 1 To 2        '换行
        Debug.Print
    Next
     Debug.Print "添加工作簿之后,工作簿的数目为:" & wbscount
     Debug.Print "添加后各工作簿名称如下:";
    For Each temp In wbs
        Debug.Print temp.Name & " ";
    Next
    Set wb = Workbooks(2)
    wb.Activate
    For i = 1 To 2
        Debug.Print
    Next
    Debug.Print "添加工作簿之后集合中的第二个成员为:" & wb.Name
    wsscount = wb.Sheets.Count
    For i = 1 To 2
      Debug.Print
    Next
    Debug.Print "添加工作表之前,工作簿的数目为:" & wbscount
    Debug.Print "添加前各工作表名称如下:";
    For Each temp In wb.Worksheets
        Debug.Print temp.Name & " ";
    Next
    wb.Worksheets.Add
    Set ws = wb.Worksheets(1)
    For i = 1 To 2
        Debug.Print
    Next
    Debug.Print "添加工作表之后集合中的第一个成员为 :" & ws.Name
    wsscount = wb.Worksheets.Count
    For i = 1 To 2
        Debug.Print
    Next
    Debug.Print "添加工作表之后,工作表的数目为:" & wbscount
    Debug.Print "添加后前各工作簿名称如下:";
     For Each temp In wb.Worksheets
        Debug.Print temp.Name & " ";
    Next
End Sub

【场景描述】

已经打开的工作表

【立即窗口】

立即窗口打印结果

添加工作簿之前,工作簿的数目为:1
添加前各工作簿名称如下:VBA.xlsm 

添加工作簿之后,工作簿的数目为:2
添加后各工作簿名称如下:VBA.xlsm 工作簿1 

添加工作簿之后集合中的第二个成员为:工作簿1


添加工作表之前,工作簿的数目为:2
添加前各工作表名称如下:Sheet1 

添加工作表之后集合中的第一个成员为 :Sheet2


添加工作表之后,工作表的数目为:2
添加后前各工作簿名称如下:Sheet2 Sheet1 

【结果展示】

已经新建了工作簿1

并且已经在工作簿1中新增sheet2

相关文章:

  • 树莓派上Java程序作为linux服务并开机自动启动
  • tracert与pathping
  • 线程池及并发编程基础总结
  • Ztree当节点没有下级时不显示下拉图标
  • Bootstrap表单验证插件bootstrapValidator使用方法整理
  • 寻找多数元素问题
  • chattr加锁文件引起yum更新时报错处理
  • Java迭代器
  • extjs4学习之配置
  • iptables练习
  • 大数据分析之hadoop的基本学习1-VMwae+Ubuntu
  • JavaScript的two-sum问题解法
  • nginx ssl
  • 关于Java内部类的初始化
  • noi 1.5 45:金币
  • 2017-09-12 前端日报
  • codis proxy处理流程
  • Java基本数据类型之Number
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • UMLCHINA 首席专家潘加宇鼎力推荐
  • vue中实现单选
  • 编写高质量JavaScript代码之并发
  • 多线程事务回滚
  • 翻译--Thinking in React
  • 工作中总结前端开发流程--vue项目
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 用mpvue开发微信小程序
  • Android开发者必备:推荐一款助力开发的开源APP
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • (03)光刻——半导体电路的绘制
  • (9)目标检测_SSD的原理
  • (C语言)逆序输出字符串
  • (C语言)输入一个序列,判断是否为奇偶交叉数
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (NSDate) 时间 (time )比较
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (附源码)ssm旅游企业财务管理系统 毕业设计 102100
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (六)Hibernate的二级缓存
  • (排序详解之 堆排序)
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (三)c52学习之旅-点亮LED灯
  • (完整代码)R语言中利用SVM-RFE机器学习算法筛选关键因子
  • (转)JAVA中的堆栈
  • (转)memcache、redis缓存
  • (转)人的集合论——移山之道
  • .bat批处理(四):路径相关%cd%和%~dp0的区别
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net web项目 调用webService
  • .net 前台table如何加一列下拉框_如何用Word编辑参考文献