ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 不打开工作簿读写数据示例

不打开工作簿读写数据示例

作者:绿色风 分类: 时间:2022-08-18 浏览:107
楼主
杨开科
起源:http://www.exceltip.net/thread-34129-1-1.html

示例文件:
不打开工作簿读写数据.rar


本示例着重于对CreateObject 函数、GetObject 函数的理解。
  1. Sub GetObjectDemo1()
  2.     Dim f1, fso
  3.     '关闭屏幕更新
  4.     Application.ScreenUpdating = False
  5.     '出现需用户应答的消息时,让Microsoft Excel 选择默认应答
  6.     Application.DisplayAlerts = False
  7.     '创建并返回一个对 ActiveX 对象的引用
  8.     Set fso = CreateObject("Scripting.FileSystemObject")
  9.     For Each f1 In fso.getfolder(ThisWorkbook.Path & "\").Files
  10.         '对文件类型(f1.Type)及文件名(f1.Name)作一个判别,排除不相关的文件
  11.         If f1.Type = "Microsoft Office Excel 工作表" And f1.Name <> ThisWorkbook.Name Then
  12.             '使用 With...End With 语句块引用 GetObject(f1)对象
  13.             With GetObject(f1)
  14.                 '在Sheet1工作表上的单元格区域A1:B10中写入数据
  15.                 .Sheets("Sheet1").Range("A1:B10").Value = f1.Name & "我爱你"
  16.                 .Sheets("Sheet1").Cells.EntireColumn.AutoFit    '自动调整列宽
  17.                 Windows(f1.Name).Visible = True    '设置对象窗口为可见状态
  18.                 '    .IsAddin = True
  19.                 '    .IsAddin = False
  20.                 .Close True    '保存并关闭
  21.             End With
  22.         End If
  23.     Next
  24.     Application.DisplayAlerts = True
  25.     Application.ScreenUpdating = True
  26.     Set fso = Nothing
  27. End Sub
  假定该示例所在文件夹中存在至少一个或多个工作簿,且工作簿中存在Sheet1工作表,运行该示例,将在所有工作簿(排除正在运行代码的工作簿)Sheet1工作表上的单元格区域A1:B10中写入数据。
  注意:在示例文件代码中,Windows(f1.Name).Visible = True不可或缺,否则工作簿中窗口将被隐藏。或者也可设置Workbook 对象的IsAddin属性使得工作簿窗口由不可见变为可见,不过建议使用Windows(f1.Name).Visible = True。
  关于如何读取工作簿数据,则对上述代码稍加修改即可,此处不再介绍。
2楼
开心E点
学习

免责声明

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

评论列表
sitemap