End Sub 在本示例中,如果活动工作簿不能进行写保护,那么 Microsoft Excel 设置字符串 密码以作为活动工作簿的写密码。 'Sub UseWritePassword() Dim strPassword As String strPassword = "secret" ' Set password to a string if allowed. If ActiveWorkbook.WriteReserved = False Then ActiveWorkbook.WritePassword = strPassword End If End Sub 在本示例中,Microsoft Excel 打开名为 Password.xls 的工作簿,设置它的密码 ,然后关闭该工作簿。本示例假定名为 Password.xls 的文件位于 C:/ 驱动器上。 'Sub UsePassword() Dim wkbOne As Workbook Set wkbOne = Application.Workbooks.Open("C:/Password.xls") wkbOne.Password = "secret" wkbOne.Close '注意 Password 属性可读并返回 “********”。 End Sub 本示例将 Book1.xls 的当前窗口更改为显示公式。 Workbooks("BOOK1.XLS").Worksheets("Sheet1").Activate ActiveWindow.DisplayFormulas = True '本示例接受活动工作簿中的所有更改? ActiveWorkbook.AcceptAllChanges 本示例显示活动工作簿的路径和名称 Sub UseCanonical() MsgBox '消息框 [b7] = ActiveWorkbook.FullName '当前工作簿 [b8] = ActiveWorkbook.FullNameURLEncoded '活动工作簿 End Sub 本示例显示 Microsoft Excel 启动文件夹的完整路径。 MsgBox Application.StartupPath 本示例显示活动工作簿中每个工作表的名称。 For Each ws In Worksheets MsgBox ws.Name Next ws 本示例关闭除正在运行本示例的工作簿以外的其他所有工作簿,并保存其更改内容。 For Each w In Workbooks If w.Name ThisWorkbook.Name Then w.Close savechanges:=True End If Next w Activate 事件 激活一个工作簿、工作表、图表或嵌入图表时产生此事件。 当激活工作表时,本示例对 A1:A10 区域进行排序。 Private Sub Worksheet_Activate() Range("a1:a10").Sort Key1:=Range("a1"), Order:=xlAscending End Sub Calculate 事件 对于 Worksheet 对象,在对工作表进行重新计算之后产生此事件 每当工作表重新计算时,本示例就调整 A 列到 F 列的宽度。 Private Sub Worksheet_Calculate() Columns("A:F").AutoFit End Sub BeforeDoubleClick 事件 应用于 Worksheet 对象的 Activate 方法。 当双击某工作表时产生此事件,此事件先于默认的双击操作。 Private Sub expression_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) expression 引用在类模块中带有事件声明的 Worksheet 类型对象的变量。 Target 必需。双击发生时最靠近鼠标指针的单元格。 Cancel 可选。当事件发生时为 False。如果事件过程将该参数设为 True,则该 过程执行完之后将不进行默认的双击操作。 BeforeRightClick 事件 应用于 Worksheet 对象的 Activate 方法。 当用鼠标右键单击某工作表时产生此事件,此事件先于默认的右键单击操作。 Private Sub expression_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) expression 引用在类模块中带有事件声明的 Worksheet 类型对象的变量。 Target 必需。右键单击发生时最靠近鼠标指针的单元格。 Cancel 可选。当事件发生时为 False。如果该事件过程将本参数设为 True,则 该过程执行结束之后不进行默认的右键单击操作。 Change 事件 当用户更改工作表中的单元格,或外部链接引起单元格的更改时产生此事件。 Private Sub Worksheet_Change(ByVal Target As Range) Target 更改的区域。可以是多个单元格。 说明 重新计算引起的单元格更改不触发本事件。可使用 Calculate 事件俘获工作表重新 计算操作。 本示例将更改的单元格的颜色设为蓝色。 Private Sub Worksheet_Change(ByVal Target as Range) Target.Font.ColorIndex = 5 End Sub Deactivate 事件 图表、工作表或工作簿从活动状态转为非活动状态时产生此事件。 Private Sub object_Deactivate() object Chart、Workbook 或者 Worksheet。有关对 Chart 对象使用事件的详细 信息,请参阅 Chart 对象事件的用法。 本示例当工作簿转为非活动状态时,对所有打开的窗口进行排列。 Private Sub Workbook_Deactivate() Application.Windows.Arrange xlArrange End Sub FollowHyperlink 事件 当单击工作表上的任意超链接时,发生此事件。对于应用程序级或工作簿级的事件, 请参阅 SheetFollowHyperlink 事件。 Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) Target Hyperlink 类型,必需。一个代表超链接目标位置的 Hyperlink 对象。 本示例对在当前活动工作簿中访问过的所有链接保留一个列表或历史记录。 Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) With UserForm1 .ListBox1.AddItem Target.Address .Show End With End Sub PivotTableUpdate 事件 发生在工作簿中的数据透视表更新之后。 |