Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

dossier plante le jour de sa création ???

2 réponses
Avatar
Cyr13
bonjour !!
je n'arrive pas a comprendre pourquoi le jour de sa creation le fichier
"sauvegarde recap production" ne se ferme pas et reste vierge ??? plus de
probleme des que le fichier est present ???
ps: je joint de code incriminé (lol)

Private Sub Workbook_BeforeClose(cancel As Boolean)

ScreenUpdating = False
Application.DisplayAlerts = False
nomClasseurMaitre = ThisWorkbook.Name
dossier = "Sauve" & (Format(Date, "m") & " " & Format(Date, "mmmm"))
répertoire = ("c:\documents and settings\All users\menu
démarrer\programmes\facturation\Sauvegarde\" & dossier)
If Dir(répertoire, vbDirectory) = "" Then MkDir répertoire
nomClasseurSauv = "Sauvegarde Recap Production" & " " & Format(Now,
"mmmm-yyyy") & ".xls"
If Dir(répertoire & "\" & nomClasseurSauv) = "" Then
Workbooks.Add
ActiveWorkbook.SaveAs répertoire & "\" & "Sauvegarde Recap Production"
& " " & Format(Now, "mmmm-yyyy") & ".xls"
Else
Workbooks.Open (répertoire & "\" & nomClasseurSauv)
Workbooks(nomClasseurMaitre).Sheets("recap production").Copy
Before:=Workbooks(nomClasseurSauv).Sheets(1)
nomOnglet = Format(Now, "dd-mmmm")
If ExisteOnglet(nomOnglet) Then ActiveWorkbook.Sheets(nomOnglet).Delete
ActiveWorkbook.ActiveSheet.Name = nomOnglet
derlig = Cells.Find("*", , , , xlByRows, xlPrevious).Row
dercol = Cells.Find("*", , , , xlByColumns, xlPrevious).Column
Range("B3", Cells(derlig, dercol)).Copy
ActiveWorkbook.Sheets(1).[B3].PasteSpecial Paste:=xlPasteValues
ActiveWorkbook.SaveAs répertoire & "\" & nomClasseurSauv
ActiveWorkbook.Close False
End If

End Sub
--
un grand merci a ceux qui pourrons m aider et a ceux qui auront pris la
peine de lire mon probleme..

2 réponses

Avatar
FFO
Salut Cyr13

Dans ton code
Il Y a 3 If et qu'un seul End If
En toute logique il doit y avoir autant de If que de End If
Je suppose que 2 End If on été oubliés à la fin de ta recopie
Ceci est important pour cerner la raison de ton dysfonctionnement
Peux tu me confirmer et me renvoyer ce code dans son intégralité

Dans l'attente



bonjour !!
je n'arrive pas a comprendre pourquoi le jour de sa creation le fichier
"sauvegarde recap production" ne se ferme pas et reste vierge ??? plus de
probleme des que le fichier est present ???
ps: je joint de code incriminé (lol)

Private Sub Workbook_BeforeClose(cancel As Boolean)

ScreenUpdating = False
Application.DisplayAlerts = False
nomClasseurMaitre = ThisWorkbook.Name
dossier = "Sauve" & (Format(Date, "m") & " " & Format(Date, "mmmm"))
répertoire = ("c:documents and settingsAll usersmenu
démarrerprogrammesfacturationSauvegarde" & dossier)
If Dir(répertoire, vbDirectory) = "" Then MkDir répertoire
nomClasseurSauv = "Sauvegarde Recap Production" & " " & Format(Now,
"mmmm-yyyy") & ".xls"
If Dir(répertoire & "" & nomClasseurSauv) = "" Then
Workbooks.Add
ActiveWorkbook.SaveAs répertoire & "" & "Sauvegarde Recap Production"
& " " & Format(Now, "mmmm-yyyy") & ".xls"
Else
Workbooks.Open (répertoire & "" & nomClasseurSauv)
Workbooks(nomClasseurMaitre).Sheets("recap production").Copy
Before:=Workbooks(nomClasseurSauv).Sheets(1)
nomOnglet = Format(Now, "dd-mmmm")
If ExisteOnglet(nomOnglet) Then ActiveWorkbook.Sheets(nomOnglet).Delete
ActiveWorkbook.ActiveSheet.Name = nomOnglet
derlig = Cells.Find("*", , , , xlByRows, xlPrevious).Row
dercol = Cells.Find("*", , , , xlByColumns, xlPrevious).Column
Range("B3", Cells(derlig, dercol)).Copy
ActiveWorkbook.Sheets(1).[B3].PasteSpecial Paste:=xlPasteValues
ActiveWorkbook.SaveAs répertoire & "" & nomClasseurSauv
ActiveWorkbook.Close False
End If

End Sub
--
un grand merci a ceux qui pourrons m aider et a ceux qui auront pris la
peine de lire mon probleme..


Avatar
FFO
Aprés analyse plus approfondie de ton code finalement je déplacerai ton
dernier End If aprés l'instruction :

Workbooks.Open (répertoire & "" & nomClasseurSauv)
ce qui donne ton code ainsi :

Private Sub Workbook_BeforeClose(cancel As Boolean)

ScreenUpdating = False
Application.DisplayAlerts = False
nomClasseurMaitre = ThisWorkbook.Name
dossier = "Sauve" & (Format(Date, "m") & " " & Format(Date, "mmmm"))
répertoire = ("c:documents and settingsAll usersmenu
démarrerprogrammesfacturationSauvegarde" & dossier)
If Dir(répertoire, vbDirectory) = "" Then MkDir répertoire
nomClasseurSauv = "Sauvegarde Recap Production" & " " & Format(Now,
"mmmm-yyyy") & ".xls"
If Dir(répertoire & "" & nomClasseurSauv) = "" Then
Workbooks.Add
ActiveWorkbook.SaveAs répertoire & "" & "Sauvegarde Recap Production"
& " " & Format(Now, "mmmm-yyyy") & ".xls"
Else
Workbooks.Open (répertoire & "" & nomClasseurSauv)
End If
Workbooks(nomClasseurMaitre).Sheets("recap production").Copy
Before:=Workbooks(nomClasseurSauv).Sheets(1)
nomOnglet = Format(Now, "dd-mmmm")
If ExisteOnglet(nomOnglet) Then ActiveWorkbook.Sheets(nomOnglet).Delete
ActiveWorkbook.ActiveSheet.Name = nomOnglet
derlig = Cells.Find("*", , , , xlByRows, xlPrevious).Row
dercol = Cells.Find("*", , , , xlByColumns, xlPrevious).Column
Range("B3", Cells(derlig, dercol)).Copy
ActiveWorkbook.Sheets(1).[B3].PasteSpecial Paste:=xlPasteValues
ActiveWorkbook.SaveAs répertoire & "" & nomClasseurSauv
ActiveWorkbook.Close False

A tester
Dis moi !!!!

bonjour !!
je n'arrive pas a comprendre pourquoi le jour de sa creation le fichier
"sauvegarde recap production" ne se ferme pas et reste vierge ??? plus de
probleme des que le fichier est present ???
ps: je joint de code incriminé (lol)

Private Sub Workbook_BeforeClose(cancel As Boolean)

ScreenUpdating = False
Application.DisplayAlerts = False
nomClasseurMaitre = ThisWorkbook.Name
dossier = "Sauve" & (Format(Date, "m") & " " & Format(Date, "mmmm"))
répertoire = ("c:documents and settingsAll usersmenu
démarrerprogrammesfacturationSauvegarde" & dossier)
If Dir(répertoire, vbDirectory) = "" Then MkDir répertoire
nomClasseurSauv = "Sauvegarde Recap Production" & " " & Format(Now,
"mmmm-yyyy") & ".xls"
If Dir(répertoire & "" & nomClasseurSauv) = "" Then
Workbooks.Add
ActiveWorkbook.SaveAs répertoire & "" & "Sauvegarde Recap Production"
& " " & Format(Now, "mmmm-yyyy") & ".xls"
Else
Workbooks.Open (répertoire & "" & nomClasseurSauv)
Workbooks(nomClasseurMaitre).Sheets("recap production").Copy
Before:=Workbooks(nomClasseurSauv).Sheets(1)
nomOnglet = Format(Now, "dd-mmmm")
If ExisteOnglet(nomOnglet) Then ActiveWorkbook.Sheets(nomOnglet).Delete
ActiveWorkbook.ActiveSheet.Name = nomOnglet
derlig = Cells.Find("*", , , , xlByRows, xlPrevious).Row
dercol = Cells.Find("*", , , , xlByColumns, xlPrevious).Column
Range("B3", Cells(derlig, dercol)).Copy
ActiveWorkbook.Sheets(1).[B3].PasteSpecial Paste:=xlPasteValues
ActiveWorkbook.SaveAs répertoire & "" & nomClasseurSauv
ActiveWorkbook.Close False
End If

End Sub
--
un grand merci a ceux qui pourrons m aider et a ceux qui auront pris la
peine de lire mon probleme..