{subsection: Embedded VBA}
 
-For people who wish to dispatch an Excel workbook to another machine for calculation, saving, and then closing of Excel and the return of the workbook, a fairly straightforward solution is to use a VBA script and modifying a setting in the Excel that one uses to view the workbook's contents.
+For people who wish to dispatch an Excel workbook to another machine for calculation, saving, and then closing of Excel and the return of the workbook, a fairly straightforward solution is to use a VBA script and modifying a setting in Excel that one uses to view the workbook's contents. However, because of security features in newer versions of Office, by default Excel does not automatically execute VBA scripts. A pre-job hook must be executed before to modify a registry key setting to disable the security.
+
+{subsection: Pre-job Hook}
+
+The following reg file is needed. Note that each version of Office has this setting in a slightly different place.
+
+office.reg:
+
+  Windows Registry Editor Version 5.00
+  ;Office 2007
+  [HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Security]
+  "VBAWarnings"=dword:00000001
+
+This batch script would serve as the actual pre-job hook.
+
+office.bat
+
+  C:\windows\regedit.exe /s _hookdirectory_/office.reg
+
+Please keep in mind that the bat file must have the absolute path to the .reg file due to the security setup that Condor jobs run in, unless the .reg file is sent alongside the job and is in the current execute directory. The full path to regedit is also specified for the same reason, but may not be absolutely necessary.
+
+{subsection: VBA Script}
 
 The embedded VBA is in the actual workbook so instead of calling a script to execute Excel, Condor directly calls it.  In this example, the script relies on two settings, Application.Calculation and ActiveWorkbook.ForceFullCalculation.  It checks to see if Calculation is set to xlCalculationAutomatic and ForceFullCalculation is set to True.  If both are true, then it sets ForceFullCalculation to False and Calculation to xlCalculationManual, refreshes and hence forces a recalculation, saves, and then exits the program.
 
@@ -129,6 +150,7 @@
   error        = excel.embeddedvba.err.txt
   output       = excel.embeddedvba.out.txt
   load_profile = true
+  #Silently start excel without startup screen.
   arguments    = /e filelocation
   queue 1