Comment utiliser l'object Excel à une autre procédure dans vba

J'ai besoin d'utiliser un object Excel (qui est défini dans une procédure), à ​​une autre procédure dans le même module. Mais pas capable de le faire. Aidez-moi à faire de même. Voici mon code.

Public Sub FirstProc() 'Here the excel object is defined Set xlApp = CreateObject("Excel.Application") Set xlWorkbook = xlApp.Workbooks.Open(ReportTemplateDirectory\Test.xlsx") xlApp.Visible = True ... ... 'all work goes here FINE ... SecondProc 'calling second proc End Sub 

Voici ma deuxième procédure,

 Public Sub SecondProc() ' In this procedure i need to delete a sheet of the same excel file which is generated in above procedure. xlWorkbook.Sheets(4).Delete End Sub 

Mais je reçois l'object RunTime Error 424 requirejs. Toute aide serait appréciée.

Alors que je voudrais simplement append cette ligne au premier module, vous pourriez essayer quelque chose comme ça (testé dans Outlook).

DisplayAlerts désactivé pour éviter un message de vérification lorsque la feuille est supprimée.

 Public Sub FirstProc() 'Here the excel object is defined Dim xlApp As Object Dim xlWorkbook As Object Set xlApp = CreateObject("Excel.Application") xlApp.displayalerts = False Set xlWorkbook = xlApp.Workbooks.Add xlApp.Visible = True Call SecondProc(xlWorkbook) 'calling second proc xlApp.displayalerts = True End Sub Public Sub SecondProc(xlWorkbook As Object) ' In this procedure i need to delete a sheet of the same excel file which is generated in above procedure. xlWorkbook.Sheets(2).Delete End Sub