I do a fair amount of data manipulation and use a lot of VBA to do the manipulation. This results in having multiple versions of similar bits of code across many workbooks - sometimes identical bits of code across many workbooks. Needless to say, this can make code maintenance challenging.

I recently discovered (from http://www.vbaexpress.com/kb/getarticle.php?kb_id=279) that I can put subs and functions in external spreadsheets. It's a bit tricky but I think that I've been able to apply this approach to one of the data tools I maintain. I'm using the following module to facilitate the approach:
Option Explicit

' Run an external macro, passing up to 30 parameters to it.
' Code adapted from: http://www.vbaexpress.com/kb/getarticle.php?kb_id=279
'
Public Function runExternalMacro(strWorkbookName As String, strMacroName As String, Optional arg1 As Variant, Optional arg2 As Variant, Optional arg3 As Variant, Optional arg4 As Variant, _
    Optional arg5 As Variant, Optional arg6 As Variant, Optional arg7 As Variant, Optional arg8 As Variant, Optional arg9 As Variant, Optional arg10 As Variant, Optional arg11 As Variant, _
    Optional arg12 As Variant, Optional arg13 As Variant, Optional arg14 As Variant, Optional arg15 As Variant, Optional arg16 As Variant, Optional arg17 As Variant, Optional arg18 As Variant, Optional arg19 As Variant, _
    Optional arg20 As Variant, Optional arg21 As Variant, Optional arg22 As Variant, Optional arg23 As Variant, Optional arg24 As Variant, Optional arg25 As Variant, Optional arg26 As Variant, _
    Optional arg27 As Variant, Optional arg28 As Variant, Optional arg29 As Variant, Optional arg30 As Variant) As Variant
    
    Dim wbTarget As Workbook
    Dim boolAlreadyOpen As Boolean
    
    Set wbTarget = OpenExternalWorkbook(strWorkbookName, boolAlreadyOpen, True)
     
     'Check and make sure workbook was opened
    If wbTarget Is Nothing Or Err.Number = 1004 Then
        MsgBox "Cannot open Macro File " & strWorkbookName & "!"
        Exit Function
    End If
     
    On Error GoTo 0
    ThisWorkbook.Activate
     
     'Run the function or subroutine
    runExternalMacro = Application.Run(wbTarget.name & "!" & strMacroName, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11, arg12, arg13, arg14, arg15, arg16, arg17, arg18, arg19, arg20, arg21, arg22, arg23, arg24, arg25, arg26, arg27, arg28, arg29, arg30)
    
    If Not boolAlreadyOpen Then
        Application.DisplayAlerts = False
        wbTarget.Close savechanges:=False
        Application.DisplayAlerts = True
    End If
    
End Function

' Return pointer to workbook opened. Indicate if it was already open
Public Function OpenExternalWorkbook(strWorkbookName As String, ByRef boolAlreadyOpen As Boolean, Optional ReadOnly As Boolean = False) As Workbook
    
    boolAlreadyOpen = True
     
     'Attempt to set the target workbook to a variable.  If an error is
     'generated, then the workbook is not open, so open it
    On Error Resume Next
    Set OpenExternalWorkbook = Workbooks(getFilename(strWorkbookName))
     
    If Err.Number <> 0 Then
         'Open the workbook
        Err.Clear
        On Error Resume Next
        Set OpenExternalWorkbook = Workbooks.Open(Filename:=strWorkbookName, ReadOnly:=ReadOnly)
        boolAlreadyOpen = False
    End If
     
    On Error GoTo 0
End Function
What solutions have you found to help manage this sort of issue?