<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VBA%2FExcel%2FAccess%2FWord%2FExcel%2FWorkbook_Event</id>
		<title>VBA/Excel/Access/Word/Excel/Workbook Event - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.vbex.ru/index.php?action=history&amp;feed=atom&amp;title=VBA%2FExcel%2FAccess%2FWord%2FExcel%2FWorkbook_Event"/>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Workbook_Event&amp;action=history"/>
		<updated>2026-04-06T11:04:23Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Workbook_Event&amp;diff=1490&amp;oldid=prev</id>
		<title> в 16:33, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Workbook_Event&amp;diff=1490&amp;oldid=prev"/>
				<updated>2010-05-26T16:33:00Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 16:33, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Workbook_Event&amp;diff=1491&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.vbex.ru/index.php?title=VBA/Excel/Access/Word/Excel/Workbook_Event&amp;diff=1491&amp;oldid=prev"/>
				<updated>2010-05-26T12:47:16Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Activate and deactivate events in a workbook==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_SheetActivate(ByVal Sh As Object)&lt;br /&gt;
    MsgBox Sh.Name&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==BeforeClose event is used to delete a custom menu==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
    Dim cbWSMenuBar As CommandBar&lt;br /&gt;
    On Error Resume Next&lt;br /&gt;
    Set cbWSMenuBar = Application.rumandBars(&amp;quot;Worksheet menu bar&amp;quot;)&lt;br /&gt;
    cbWSMenuBar.Controls(&amp;quot;MrExcel Programs&amp;quot;).Delete&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Before Save event==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)&lt;br /&gt;
      Dim lReply As Long&lt;br /&gt;
      If SaveAsUI = True Then&lt;br /&gt;
      lReply = MsgBox(&amp;quot;Do you wish to save this workbook?&amp;quot;, vbQuestion + vbOKCancel)&lt;br /&gt;
      Cancel = (lReply = vbCancel)&lt;br /&gt;
      If Cancel = False Then Me.Save&lt;br /&gt;
          Cancel = True&lt;br /&gt;
      End If&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Cancel Close action based on the A1 value==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
         If ThisWorkbook.Sheets(&amp;quot;Sheet1&amp;quot;).Range(&amp;quot;A1&amp;quot;).Value &amp;lt;&amp;gt; True Then&lt;br /&gt;
            Cancel = True&lt;br /&gt;
         End If&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==create your own Save dialog in the event:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
    Dim Msg As String&lt;br /&gt;
    Dim Response&lt;br /&gt;
    Dim cbWSMenuBar As CommandBar&lt;br /&gt;
    If Not ThisWorkbook.Saved Then&lt;br /&gt;
        Msg = &amp;quot;Do you want to save the changes you made to &amp;quot; &amp;amp; Me.Name &amp;amp; &amp;quot;?&amp;quot;&lt;br /&gt;
        Response = MsgBox(Msg, vbQuestion + vbYesNoCancel)&lt;br /&gt;
        Select Case Response&lt;br /&gt;
            Case vbYes&lt;br /&gt;
                ThisWorkbook.Save&lt;br /&gt;
            Case vbNo&lt;br /&gt;
                ThisWorkbook.Saved = True&lt;br /&gt;
            Case vbCancel&lt;br /&gt;
                Cancel = True&lt;br /&gt;
                Exit Sub&lt;br /&gt;
            End Select&lt;br /&gt;
    End If&lt;br /&gt;
    On Error Resume Next&lt;br /&gt;
    Set cbWSMenuBar = Application.rumandBars(&amp;quot;Worksheet menu bar&amp;quot;)&lt;br /&gt;
    cbWSMenuBar.Controls(&amp;quot;MrExcel Programs&amp;quot;).Delete&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==If you want Excel to stop prompting you to save changes you didn&amp;quot;t make==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
         Me.Saved = True&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==If you want to make sure that all changes are saved when the workbook closes==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
           If Not ThisWorkbook.Saved Then&lt;br /&gt;
           ThisWorkbook.Save&lt;br /&gt;
           End If&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==If you want to prevent users from printing only particular sheets in your workbook, use this similar code instead:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Sub workbook_BeforePrint(Cancel As Boolean)&lt;br /&gt;
   Select Case ActiveSheet.Name&lt;br /&gt;
          Case &amp;quot;Sheet1&amp;quot;, &amp;quot;Sheet2&amp;quot;&lt;br /&gt;
          Cancel = True&lt;br /&gt;
          MsgBox &amp;quot;Sorry, you cannot print this sheet from this workbook&amp;quot;, vbInformation&lt;br /&gt;
   End Select&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==minimizes the workbook&amp;quot;s window:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_Deactivate()&lt;br /&gt;
    ThisWorkbook.Windows(1).WindowState = xlMinimized&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==only allow the workbook to close if the figure in A1 is between 500 and 600:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
           Dim dProfit As Double&lt;br /&gt;
           dProfit = ThisWorkbook.Worksheets(1).Range(&amp;quot;A1&amp;quot;).Value&lt;br /&gt;
           If dProfit &amp;lt; 500 Or dProfit &amp;gt; 600 Then&lt;br /&gt;
           MsgBox &amp;quot;Profit must be in the range 500 to 600&amp;quot;&lt;br /&gt;
           Cancel = True&lt;br /&gt;
           End If&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Pass value between events==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Dim OldSheet As Object&lt;br /&gt;
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)&lt;br /&gt;
    Set OldSheet = Sh&lt;br /&gt;
End Sub&lt;br /&gt;
Private Sub Workbook_SheetActivate(ByVal Sh As Object)&lt;br /&gt;
    If TypeName(Sh) = &amp;quot;Chart&amp;quot; Then&lt;br /&gt;
        MsgBox &amp;quot;Sorry, you can&amp;quot;t activate any charts.&amp;quot;&lt;br /&gt;
        OldSheet.Activate&lt;br /&gt;
    End If&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Preventing Users from Inserting More Worksheets==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_NewSheet(ByVal Sh As Object)&lt;br /&gt;
      Application.DisplayAlerts = False&lt;br /&gt;
      MsgBox &amp;quot;Sorry, you cannot add any more sheets to this workbook&amp;quot;, _&lt;br /&gt;
      vbInformation&lt;br /&gt;
      Sh.Delete&lt;br /&gt;
      Application.DisplayAlerts = True&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==procedure is executed when the workbook is closed==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
    Open Application.Path &amp;amp; &amp;quot;\test.txt&amp;quot; _&lt;br /&gt;
      For Append As #1&lt;br /&gt;
    Print #1, &amp;quot;Stopped &amp;quot; &amp;amp; Now&lt;br /&gt;
    Close #1&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Set application key in Workbook Open event and BeforeCloseEvent==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_Open()&lt;br /&gt;
    Application.OnKey &amp;quot;{RIGHT}&amp;quot;, &amp;quot;HighlightRight&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{LEFT}&amp;quot;, &amp;quot;HighlightLeft&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{UP}&amp;quot;, &amp;quot;HighlightUp&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{DOWN}&amp;quot;, &amp;quot;HighlightDown&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{DEL}&amp;quot;, &amp;quot;DisableDelete&amp;quot;&lt;br /&gt;
End Sub&lt;br /&gt;
Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
    Application.OnKey &amp;quot;{RIGHT}&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{LEFT}&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{UP}&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{DOWN}&amp;quot;&lt;br /&gt;
    Application.OnKey &amp;quot;{DEL}&amp;quot;&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==The BeforeClose event for a workbook==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
    Dim Msg As String&lt;br /&gt;
    Dim Ans As Integer&lt;br /&gt;
    Dim FName As String&lt;br /&gt;
    Msg = &amp;quot;Would you like to make a backup of this file?&amp;quot;&lt;br /&gt;
    Ans = MsgBox(Msg, vbYesNo)&lt;br /&gt;
    If Ans = vbYes Then&lt;br /&gt;
        FName = &amp;quot;F:\BACKUP\&amp;quot; &amp;amp; ThisWorkbook.Name&lt;br /&gt;
        ThisWorkbook.SaveCopyAs FName&lt;br /&gt;
    End If&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==The BeforeSave event for a workbook==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)&lt;br /&gt;
     If SaveAsUI Then&lt;br /&gt;
         MsgBox &amp;quot;You cannot save a copy of this workbook!&amp;quot;&lt;br /&gt;
         Cancel = True&lt;br /&gt;
    End If&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==to discard any changes to the workbook==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
     Private Sub Workbook_BeforeClose(Cancel As Boolean)&lt;br /&gt;
           ThisWorkbook.Saved = True&lt;br /&gt;
     End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==To link that tab&amp;quot;s command bar to a right-click in any cell, enter the following code in the private module of ThisWorkbook:==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)&lt;br /&gt;
      Dim cCont As CommandBarButton&lt;br /&gt;
      On Error Resume Next&lt;br /&gt;
      Application.rumandBars(&amp;quot;Cell&amp;quot;).Controls(&amp;quot;Sheet Index&amp;quot;).Delete&lt;br /&gt;
      On Error GoTo 0&lt;br /&gt;
      Set cCont = Application.rumandBars(&amp;quot;Cell&amp;quot;).Controls.Add _&lt;br /&gt;
      (Type:=msoControlButton, Temporary:=True)&lt;br /&gt;
      With cCont&lt;br /&gt;
        .Caption = &amp;quot;Sheet Index&amp;quot;&lt;br /&gt;
        .OnAction = &amp;quot;IndexCode&amp;quot;&lt;br /&gt;
      End With&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==use the BeforePrint event to add information to a header or footer before the sheet is printed==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforePrint(Cancel As Boolean)&lt;br /&gt;
    ActiveSheet.PageSetup.RightFooter = ActiveWorkbook.FullName&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Workbook activation events==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_Activate()&lt;br /&gt;
    ActiveWindow.WindowState = xlMaximized&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Workbook_BeforePrint==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_BeforePrint(Cancel As Boolean)&lt;br /&gt;
    Debug.Print Now()&lt;br /&gt;
    Debug.Print Application.UserName&lt;br /&gt;
    Debug.Print ActiveSheet.Name&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Workbook Events Open: enable custom toolbar==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_Open()&lt;br /&gt;
    Application.rumandBars(&amp;quot;My Custom Toolbar&amp;quot;).Enabled = True&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Workbook open event==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_Open()&lt;br /&gt;
  Dim w As Window&lt;br /&gt;
  MsgBox &amp;quot;Executing the event procedure Workbook_Open.&amp;quot;&lt;br /&gt;
  For Each w In Windows&lt;br /&gt;
    If w.Parent.Name &amp;lt;&amp;gt; ActiveWorkbook.Name And w.Visible Then&lt;br /&gt;
      w.WindowState = xlMinimized&lt;br /&gt;
    End If&lt;br /&gt;
  Next&lt;br /&gt;
End Sub&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Workbook_SheetSelectionChange==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;vb&amp;quot;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) &lt;br /&gt;
        If Target.Row Mod 2 = 0 Then &lt;br /&gt;
            MsgBox &amp;quot;You selected the range &amp;quot; &amp;amp; Target.Address &amp;amp; &amp;quot; on &amp;quot; &amp;amp; Sh.Name, vbOKOnly, _ &lt;br /&gt;
                   &amp;quot;SheetSelectionChange Event&amp;quot; &lt;br /&gt;
        Else &lt;br /&gt;
            MsgBox &amp;quot;You selected the range &amp;quot; &amp;amp; Target.Address &amp;amp; &amp;quot; on &amp;quot; &amp;amp; Sh.Name, vbOKOnly, _ &lt;br /&gt;
                   &amp;quot;SheetSelectionChange Event&amp;quot; &lt;br /&gt;
        End If &lt;br /&gt;
End Sub &lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>