Existe-til un moyen sur un classeur XLT de forcer l'utilisateur à faire un
enregistrer sous et d'enregistrer le fichier dans un répertoire précis du
réseau, sans qu'il n'ai a le chercher (le répertoire). ?
Bonjour, TITUS Désolé de répondre si tard, j'étais parti en congés et je n'avais pas encore eu le temps de consulter les newsgroups...
Je me suis rendu compte d'une erreur dans mon code qui aurait dû t'amener vers une boucle infinie (je dis "aurait" car, visiblement, tu as un autre problème). Ce code-ci fonctionne chez moi et crée un fichier différent à chaque fois que je ferme le classeur :
Private Sub Workbook_BeforeClose(Cancel As Boolean) zenom = Environ("username") NomFichier = "daglag1publicDevis_DentairesMon-fichier" _ & zenom & Format(Now, "yymmddhhnn") If Len(Dir(NomFichier & ".xls")) <> 0 Then NumeroFichier = 2 While Len(Dir(NomFichier & "_" & NumeroFichier & ".xls")) <> 0 NumeroFichier = NumeroFichier + 1 Wend NomFichier = NomFichier & "_" & NumeroFichier End If ActiveWorkbook.SaveAs Filename:=NomFichier ThisWorkbook.Saved = True End Sub
Concernant ton erreur, je ne sais pas trop quoi dire: quelle est la valeur de NomFichier à ce moment-là ? Quelle version d'Excel utilises-tu ? -- Bonne continuation
J'obtiens une erreur d'exécution '13' : incompatibilité de type et la ligne If Len(Dir(NomFichier))=0 Then est surlignée en Jaune quand je veux fermer le document.
Pour le futur : Si je veux réouvrir le document après un temps donné juste pour le lire, le fichier va de nouveau se numéroter lors de la fermeture !!! Ne faudrait-il pas mieux faire ces macros d'enregistrement avant la fermeture, quand on clique sur le bouton enregistrer plustôt ?
Qu'en pensez-vous ?
Bonjour, TITUS
Désolé de répondre si tard, j'étais parti en congés et je n'avais pas encore
eu le temps de consulter les newsgroups...
Je me suis rendu compte d'une erreur dans mon code qui aurait dû t'amener
vers une boucle infinie (je dis "aurait" car, visiblement, tu as un autre
problème).
Ce code-ci fonctionne chez moi et crée un fichier différent à chaque fois
que je ferme le classeur :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
zenom = Environ("username")
NomFichier = "\daglag1publicDevis_DentairesMon-fichier" _
& zenom & Format(Now, "yymmddhhnn")
If Len(Dir(NomFichier & ".xls")) <> 0 Then
NumeroFichier = 2
While Len(Dir(NomFichier & "_" & NumeroFichier & ".xls")) <> 0
NumeroFichier = NumeroFichier + 1
Wend
NomFichier = NomFichier & "_" & NumeroFichier
End If
ActiveWorkbook.SaveAs Filename:=NomFichier
ThisWorkbook.Saved = True
End Sub
Concernant ton erreur, je ne sais pas trop quoi dire: quelle est la valeur
de NomFichier à ce moment-là ? Quelle version d'Excel utilises-tu ?
--
Bonne continuation
J'obtiens une erreur d'exécution '13' : incompatibilité de type
et la ligne
If Len(Dir(NomFichier))=0 Then
est surlignée en Jaune
quand je veux fermer le document.
Pour le futur :
Si je veux réouvrir le document après un temps donné juste pour le lire,
le
fichier va de nouveau se numéroter lors de la fermeture !!!
Ne faudrait-il pas mieux faire ces macros d'enregistrement avant la
fermeture, quand on clique sur le bouton enregistrer plustôt ?
Bonjour, TITUS Désolé de répondre si tard, j'étais parti en congés et je n'avais pas encore eu le temps de consulter les newsgroups...
Je me suis rendu compte d'une erreur dans mon code qui aurait dû t'amener vers une boucle infinie (je dis "aurait" car, visiblement, tu as un autre problème). Ce code-ci fonctionne chez moi et crée un fichier différent à chaque fois que je ferme le classeur :
Private Sub Workbook_BeforeClose(Cancel As Boolean) zenom = Environ("username") NomFichier = "daglag1publicDevis_DentairesMon-fichier" _ & zenom & Format(Now, "yymmddhhnn") If Len(Dir(NomFichier & ".xls")) <> 0 Then NumeroFichier = 2 While Len(Dir(NomFichier & "_" & NumeroFichier & ".xls")) <> 0 NumeroFichier = NumeroFichier + 1 Wend NomFichier = NomFichier & "_" & NumeroFichier End If ActiveWorkbook.SaveAs Filename:=NomFichier ThisWorkbook.Saved = True End Sub
Concernant ton erreur, je ne sais pas trop quoi dire: quelle est la valeur de NomFichier à ce moment-là ? Quelle version d'Excel utilises-tu ? -- Bonne continuation
J'obtiens une erreur d'exécution '13' : incompatibilité de type et la ligne If Len(Dir(NomFichier))=0 Then est surlignée en Jaune quand je veux fermer le document.
Pour le futur : Si je veux réouvrir le document après un temps donné juste pour le lire, le fichier va de nouveau se numéroter lors de la fermeture !!! Ne faudrait-il pas mieux faire ces macros d'enregistrement avant la fermeture, quand on clique sur le bouton enregistrer plustôt ?