Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 5759|回复: 8

[分享] 【烟花原创】VBA零基础之第37篇 Workbook对象(四)

[复制链接]
发表于 2013-11-30 23:13 | 显示全部楼层 |阅读模式
本帖最后由 hwc2ycy 于 2013-12-4 21:12 编辑

  Workbook的属性基本上介绍了一些,今天开始介绍Workbook对象的方法
  由于对象的属性,方法比较多,不常用的就不一一介绍,有兴趣的童鞋可以逐个研究研究。
  另外关于方法或属性的参数,不作一一介绍。写代码的时候多多F1,用熟了自然就记住了。

  Workbook.Activate
  激活与工作簿相关的第一个窗口
  Workbooks(2).Activate
  既然是激活指定工作簿的第一个窗口,下面的写法也是对的,不如上面的简洁。
   Workbooks(2).Windows(1).Activate
  '激活工作簿集合中第二个对象的窗体集合中的第一个窗体

  Workbook.ChangeFileAccess
  更改工作簿的访问权限
  语法:ChangeFileAccess(Mode, WritePassword, Notify)
  涉及到工作簿自我删除时,会用到此方法,如下列代码:
  示例:
   ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly
   Kill ActiveWorkbook.FullName
   ActiveWorkbook.Close False

  Workbook.Close 方法
  关闭对象
  语法:Close(SaveChanges, Filename, RouteWorkbook)
  SaveChanges 是否保存修改
  Filename 以此文件名保存所做的更改
  示例:
   Workbooks("工作簿1.XLSM").Close SaveChanges:=False

  Workbook.PrintOut
  打印工作簿
  语法:PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, PrToFileName, IgnorePrintAreas)
  注意事项:执行printout(安装的虚拟打印机或打印到文档)方法后,会有打印对话框,如果点取取消,会有1004的错误提示。

  Workbook.PrintPreview
  打印预览工作簿
  语法: PrintPreview (EnableChanges)
  EnableChanges   Boolean 值,用户是否可更改边距和打印预览中可用的其他页面设置选项。
  示例:
  ActiveWorkbook.PrintPreview

  Workbook.Protect
  保护工作簿使其不被修改
  语法:Protect(Password, Structure, Windows)
  这个功能应该都用过的吧,现在改用代码实现。
  Password 可选,为工作表或工作簿指定区分大小写的密码。
  Structure 可选,是否工作簿结构(工作表的相对位置),默认值是 False。
  Windows 可选,是否保护工作簿窗口,默认值是 False。
  示例:
   ActiveWorkbook.Protect Password:="123", Structure:=True, Windows:=True
   '保护工作簿,密码为123
   ActiveWorkbook.Protect Structure:=True, Windows:=True
   '保护工作簿

  Workbook.RemoveDocumentInformation
  从工作簿中删除指定类型的所有信息
  语法: RemoveDocumentInformation (RemoveDocInfoType)
  示例:
   ActiveWorkbook.RemoveDocumentInformation (xlRDIAll)
   '从文档删除所有信息

  Workbook.Save
  保存对指定工作簿所做的更改
  要将工作簿标记为已保存,但不将其写入磁盘,请将它的 Saved 属性设置为 True。
  首次保存工作簿时,请使用 SaveAs 方法指定文件名
  示例:
   If Len(ActiveWorkbook.Path) = 0 Then
    MsgBox "新建的文档尚未保存"
   Else
    ActiveWorkbook.Save
   End If

  Workbook.SaveAs
  在另一不同文件中保存对工作簿所做的更改
  语法
  SaveAs(FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)
  参数比较多,在10版本,包含有VBA工程的工作簿,推荐保存为XLSM格式。
  Filename,fileformat参数务必指定,其余的参数根据需要使用。
  示例:
  If Len(ActiveWorkbook.Path) = 0 Then
   ActiveWorkbook.SaveAs Filename:=ActiveWorkbook.Name, FileFormat:=xlOpenXMLWorkbookMacroEnabled
  Else
   ActiveWorkbook.Save
  End If

  Workbook.SaveCopyAs
  将指定工作簿的副本保存到文件,但不修改内存中的打开工作簿。
  与savecopyas不同的是,saveas保存后,当前工作簿是新文件。
  示例:
   ActiveWorkbook.SaveCopyAs "副本-" & ActiveWorkbook.Name

  Workbook.Unprotect
  取消工作簿的保护。如果工作簿不是受保护的,则此方法不起作用。
  语法:Unprotect(Password)
  如果保护有密码,则密码参数是必须的。
  示例:
   ActiveWorkbook.Protect Password:="123", structure:=True, Windows:=True
   ActiveWorkbook.Unprotect Password:="123"

评分

参与人数 2 +18 收起 理由
云影 + 15 很给力!
zhyoucheng + 3 很给力!

查看全部评分

发表于 2013-11-30 23:30 | 显示全部楼层
回复

使用道具 举报

发表于 2013-11-30 23:36 | 显示全部楼层
回复

使用道具 举报

发表于 2013-12-15 08:53 | 显示全部楼层
收藏   
回复

使用道具 举报

发表于 2013-12-30 10:39 | 显示全部楼层
{:1112:}
回复

使用道具 举报

发表于 2014-6-11 11:43 | 显示全部楼层

收藏  
回复

使用道具 举报

发表于 2014-6-16 14:47 | 显示全部楼层
{:35:}
回复

使用道具 举报

发表于 2014-6-18 11:15 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-18 22:40 | 显示全部楼层
谢谢分享,标记,三十七
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 18:49 , Processed in 0.556815 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表