IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Vérifier , créer dossier, enregistrer fichier.


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 55
    Par défaut Vérifier , créer dossier, enregistrer fichier.
    Bonjour,

    J'ai un petit souci que je n'arrive pas à résoudre depuis hier. Je tourne en rond.

    Je souhaiterai à partir de mon fichier de base devis.xlsm effectuer un enregistrement automatique dans le dossier exemple tuto en le nommant tuto 12 05 78 (Ces données sont inscrite dans ma feuille de calcul).

    Création du dossier + enregistrement fichier c'est ok, cela fonction. Mais par contre si le dossier est déjà créer et que je souhaite enregistrer tuto 12 06 120 dans le dossier tuto il me renvoi une erreur (en jaune sur formule).

    Voici le dernier code que j'ai essayé d'utiliser :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Private Sub enregistrement_click()
     
    Dim Chemin$, mondossier$, Fichier$
     
    ' Nom du chemin
    Chemin = "C:\Documents and Settings\Poste1\Bureau\DEVIS JL\Devis\"
     
    'Nom du dossier
    mondossier = Range("I6").Value
     
    'teste de la présence du dossier
    If Dir(Chemin & mondossier) = "" Then MkDir Chemin & mondossier
     
    'nom du fichier
    Fichier = Range("I6") & " " & Format(Range("E2"), "00") & " " & Format(Range("F2"), "00") & " " & Format(Range("G2"), "000") & " " & Format(Range("H2"), "000") & ".xlsm"
     
    ActiveWorkbook.SaveAs Chemin & mondossier & "\" & Fichier
    J'espère que vous pourrez m'aider.

  2. #2
    Membre chevronné Avatar de jackborogar
    Homme Profil pro
    Etudiant Ingénierie Financière
    Inscrit en
    Avril 2012
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Etudiant Ingénierie Financière
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2012
    Messages : 290
    Par défaut
    Je suppose que c'est l'erreur 1004 que tu as!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If Err.Number = 1004 Then
    If Dir(Chemin & mondossier) = "" Then MkDir Chemin & mondossier
    End If
    End If
    Essayes ça

  3. #3
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, pour la création du dossier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Private Declare Function SHCreateDirectoryEx Lib "Shell32.dll" Alias "SHCreateDirectoryExA" _
                                                 (ByVal hwnd As Long, ByVal pszPath As String, ByVal lngsec As Long) As Long
     
    Option Explicit
     
    Private Function CreationDossier(sDossier) As Long
    Dim Rep As Long
        ' Pour valeur retournée par Rep
        '   Voir http://msdn.microsoft.com/en-us/library/bb762131(VS.85).aspx
        '   et   http://msdn.microsoft.com/en-us/library/ms681381(VS.85).aspx
        Rep = SHCreateDirectoryEx(0&, sDossier, 0&)
    End Function
     
    Sub Tst()
    Dim sDossier As String
        sDossier = "C:\Essai1\Essai2\Essai3\Essai4\Essai5"
        CreationDossier sDossier
    End Sub

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 55
    Par défaut
    Bonjour,

    Non c'est cette erreur que j'ai :
    "erreur d'exécution "75"
    Erreur d'accès chemin/fichier

  5. #5
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Re, une autre façon, encore plus succincte, de créer un dossier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Option Explicit
     
    Sub CreationDossier_Shell()
    Dim sDossier As String
    Dim sChaine As String
        sDossier = "C:\Essai1\Essai2\Essai3\Essai4\Essai5"
        sChaine = Environ("comspec") & " /c mkdir " & sDossier
        Shell sChaine, 0
    End Sub

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 55
    Par défaut
    Bonjour kiki29,

    J'ai essayé avec le code simplifié ça marche mais maintenant je me retrouve avec le souci inverse. Si le dossier n'est pas créer, il beug. LOL

  7. #7
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Re, débug en regardant le contenu de la chaine de création du dossier

Discussions similaires

  1. enregistrer fichier dans un dossier :ceci est il possible??
    Par info007 dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 21/05/2014, 14h07
  2. Réponses: 5
    Dernier message: 24/04/2010, 10h59
  3. [Batch] Créer liste de fichiers-dossiers modifés depuis ..
    Par sechanbask dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 17/05/2009, 14h05
  4. Créer et enregistrer un fichier csv
    Par JAMINF dans le forum JSF
    Réponses: 5
    Dernier message: 31/10/2008, 16h44
  5. Réponses: 7
    Dernier message: 05/01/2006, 01h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo