Sauvegarde dans un dossier créé

Bonjour à tous !

Je bloque sur la finalisation d'une macro permettant :

  • de créer un dossier portant le même nom que le fichier ouvert (ok)
  • de créer des copies de ce même fichier (ok)
  • copies à placer dans le dossier créé en premier (ko)...

J'espère être clair.

Dans le fichier joint, vous trouverez une visualisation de ce que je tente de faire et les macros que je souhaite combiner

car pour le moment, même si je suis en bonne voie, je n'arrive pas à trouver la bonne syntaxe (workbook.open ou autres) permettant de mettre mes copies de fichier dans le dossier créé...(je veux en fait garder plusieurs copies d'un fichier pour avoir un historique automatique).

Merci pour les idées que vous déploierez pour trouver une solution.

AL 22

Bonjour

Un essai en ayant déclaré la variable dossier en variable Globale

sinon on pourrait faire une fonction qui fait la création du dossier et non pas une sub

Fred

Bonjour fred2406,

bonjour le forum,

Merci beaucoup pour vous être penché sur mon problème.

En déclarant la variable "public", la macro ne "colle" pas non plus le fichier créé dans le dossier crée.

De plus, cela déclenche à l'ouverture du fichier un bug sur la déclaration des variables...

On tourne autour, je suis sûr qu'il manque pas grand chose pour contourner ce problème.

Merci encore fred2406.

AL 22

Re Bonjour

effectivement... il y avait un soucis car j'avais renommé une variable mais pas partout, petit conseil évite les lettres accentuées dans les noms des sub, fonctions ou variable.... c'est un truc typiquement français...

j'ai adapter le chemin a mon pc et mis un exit sub après l'enregistrement... je te laisse remettre ton chemin et voir ensuite ce que cela engendre... dans la suite du code car il y a une autre erreur plus loin... mais je ne me suis pas penché sur la question..

excelpratique

Fred

Salut le fil...

Avec un fileSystemObject ne pas oublier de cocher dans les références.

Tu vires la Sub création de fichier pour l'instant.

Sub Création_Dossier()
    Dim strTemp As String
    Dim fso As Scripting.FileSystemObject

   On Error GoTo Création_Dossier_Error

        Set fso = New FileSystemObject

    With fso

        strTemp = "C:Bureau\AL\Excel\Copies\" & .GetBaseName(ActiveWorkbook.Name)
        'On teste si le dossier existe.
        If Not .FolderExists(strTemp) Then
            .CreateFolder strTemp

        End If

        strTemp = .BuildPath(strTemp, "svg du " & Format(Now, "mmmm"" ""yyyy"" ""hh""h""mm""m""ss""s"" - ")) & ActiveWorkbook.Name
        ActiveWorkbook.SaveCopyAs strTemp
    End With
'ensuite à toi de gérer la suppression de fichier
'...
'...

Création_Dossier_Exit:
    Exit Sub

Création_Dossier_Error:
    MsgBox "Erreur " & Err.Number & " (" & Err.Description & ") dans la procédure Création_Dossier du Module Module1"

    Resume Création_Dossier_Exit
End Sub

J'ai pas testé fait moi un retour au cas où

Re bonjour

je viens de voir aussi quelque chose... es-tu sur que ce chemin existe ?? il me parait bizarre

"C:Bureau\AL\Excel\Copies\

Fred

Bonsoir fred2406, Jean-Paul, le forum,

@ fred2406,

Merci pour tes conseils concernant les accents (j'avais rapidement corrigé), et surtout merci car la correction fonctionne. Les fichiers sont bien créés dans le dossier. Bravo !

En revanche, la suite du code permettait de ne garder que 5 fichiers (et fonctionnait) et d'en détruire les plus anciens, et ce n'est plus le cas.

S'agit-il de l'erreur dont tu parles ? Et as tu une "soluce" ?

@ Jean-Paul,

J'ai bien activé la référence "Scripting Runtime" et j'ai effectivement corrigé le chemin (merci fred2406) et également le format de date du fichier (pas grave), et bien cela fonctionne aussi. Bravo et merci !

En revanche (bis), je n'ai pas réussi pour l'instant à adapter la suite du code concernant la suppression des fichiers.

Merci à tous les deux pour le temps que vous y avez passé.

AL 22

Bonsoir tout le monde,

@ fred2406,

Ça y est, j'ai remis de l'ordre dans mes neurones (en fait, j'ai descendu le chien...), ce qui m'a permis de solutionner la dernière imperfection de la macro. La tête dans le guidon, je finissais par ne plus rien voir.

Tout fonctionne maintenant. Sujet résolu.

Merci à toi.

@Jean-Paul,

Sujet résolu, mais si tu veux m'envoyer ta vision des choses pour la suite de la macro (suppression des fichiers), je suis preneur et je peux apprendre encore avec d'autres méthodes, c'est la force d'Excel qui permet pleins de solutions pour un même problème.

Merci à toi aussi.

Très bonne fin de soirée à tout le monde.

AL 22

Rechercher des sujets similaires à "sauvegarde dossier cree"