Office Connector Web HelpOnline Help

Event Macros

Contents Index


 Office Connector Import can call macros that you record to run at specific time, for example just before saving an import file, so you can carry out steps tied to events in the workbook.

Steps

Follow these steps to record a macro tied to a Office Connector Import event:
  1. On the Developer tab, click Record Macro (in the Code group).
  2. In the Macro name box, enter one of the macro names from the Event Macros List below.  Note that the macro name must match exactly, so using Copy and Paste might be helpful.
  3. Click OK.
  4. Carry out the steps that you want your macro to perform.
    Note -If you perform an action that triggers the event while you are recording it, then an infinite loop will be started.  Office Connector Import detects this scenario and prompts you to cancel the action, but it is best to avoid it altogether.
  5. On the Developer tab, click Stop Recording (in the Code group).

Event Macros List

ActionAssociated Macro Names
Office Connector Import: Save Import FileBefore_WriteImportFiles, After_WriteImportFiles
Excel: New WorkbookOCI_OnNewWorkbook
Excel: Saving a workbook templateOCI_OnSaveTemplate

Advanced Usage

The default Before and After event macro functionality can be extended by manually editing the recorded macro procedures.

Canceling an Event

All of the events that start with Before_ can be canceled, preventing the action from taking place.  To accomplish this, change the macro from a Sub to a Function that returns a Long.  To cancel the action, assign a non-zero return value to the function.  For example:

Public Function Before_WriteImportFiles() As Long

  'Don't save unless there is a job number
  If IsEmpty(Range("A1")) Then
    Call MsgBox("You must enter a job number before saving the import file.", _
                 vbInformation)
    Before_WriteImportFiles = -1
    Exit Function
  End If

End Function

Using Return Values

All of the events that start with After_ can be modified to indicate if the action was successful.  To accomplish this, add a Long parameter to the Sub.  Office Connector Import will pass the return code from the associated action via this parameter.  Zero indicates success and other values indicate cancellation or errors.  For example:

Public Sub After_WriteImportFiles(ByVal lvOperationResult As Long)
  
  'Don't do anything if the save was canceled or did not complete due to an error
  If lvOperationResult <> 0 Then
    Exit Sub
  End If
  
  'Run the code to perform post-save steps here
  
End Sub



Content updated 5/29/2012

Copyright © 2012 Event 1 Software, Inc.  This documentation may not be copied in full or in part without written permission from Event 1 Software, Inc.