2012-09-11 33 views
7

He estado buscando cómo llamar a mi macro justo antes de guardar mi documento. Encontré esto, pero cuando introduzco mi código, no hace nada. Así que supongo que me estoy perdiendo algo.Excel VBA - Ejecutar macro antes de guardar

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) 

Set shtVO = Sheets("Voice orders") 
endRowVO = shtVO.Range("E" & Rows.Count).End(xlUp).Row 

For Row = 11 To endRowVO 
    If IsEmpty(shtVO.Cells(Row, 23).Value) = False Then 
     If shtVO.Cells(Row, 3).Value <> shtVO.Cells(Row, 23) Then 
      If shtVO.Cells(Row, 1).Value Like "*MIG*" Then 
      Else 
       shtVO.Cells(Row, 1).Value = shtVO.Cells(Row, 1).Value + "MIG" 
      End If 
     End If 
    End If 
Next Row 

End Sub 
+1

¿Ha puesto este código en el módulo 'ThisWorkbook'? –

+0

en el qué? Lo siento, esto es todo nuevo. – CustomX

+0

¿Qué no está funcionando? ¿Qué estabas tratando de hacer antes de guardar? – Passerby

Respuesta

20

Coloque el código en el módulo ThisWorkbook

Place your code here

+0

Su evento Workbook_BeforeSave también puede no ejecutarse cuando está en modo Diseño, por lo que debe asegurarse de salir del modo Diseño antes de guardar su libro. –

Cuestiones relacionadas