VBA - L'objet invoqué s'est déconnecté de ses clients - Déplacement d'onglet
Bonsoir,
J'ai une erreur qui apparait lors du déplacement d'onglet.
Ma procédure génère des onglets et les transferts dans un nouveau classeur.
à la fin j'aurais environ 300 classeurs... le nombre d'onglets de chaque classeurs est variable (j'en ai un de 91 onglets).
Lorsque l'erreur apparait, l'onglet déplacé est "corrompu" (il a que 2 graph et des checkbox mais aucune des valeurs renseignées)
Le pas à pas ne fonctionne plus à partir du while ... wend.
Avez vous une solution ? T.T
Mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
sub indicateur()
Dim GestionFichier As New Scripting.FileSystemObject
Dim ObjOutlook As New Outlook.Application
Dim OutApp As Object
Dim OutMail As Object
Dim strbody As String
Dim NbAv, NbAv2 As Double
'Nécessite les références "Microsoft Runtime" et "Outlook"
'Récupère le nom d'utilisateur
Utilisateur = Application.UserName
'Crée le dossier Temporaire "TempKPI" dans le dossier Mes documents
Chemin = "D:\Users\" & Utilisateur & "\documents\Temp"
(...)
Workbooks.Add
Set SourceWb = ActiveWorkbook
wb = ActiveWorkbook.Name
fichier = Chemin & "\F1" & "_" & Mid(Now, 4, 2) & "_" & Mid(Now, 7, 4)
While ThisWorkbook.Sheets(1).Name <> "Liste"
ThisWorkbook.Sheets(1).Move Before:=Workbooks(wb).Sheets(1)
Wend
Application.DisplayAlerts = False
Workbooks(wb).Sheets("Feuil1").Delete
Workbooks(wb).Sheets("Feuil2").Delete
Workbooks(wb).Sheets("Feuil3").Delete
On Error Resume Next
SourceWb.SaveAs fichier & ".xlsx"
Do While EstDansCollection(Workbooks, wb & ".xlsx") = True
SourceWb.SaveAs fichier & ".xlsx"
Application.Wait (Now + TimeValue("0:00:01"))
Loop
On Error GoTo 0
ActiveWorkbook.Close
(...) 'Transfert en pj de mail |
-------------------------
Nota : EstDansCollecton est une fonction qui permet de voir si un classeur est ouvert