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 :

Mauvais fonctionnement d'une macro d'enregistrement


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 11
    Points
    11
    Par défaut Mauvais fonctionnement d'une macro d'enregistrement
    Bonjour !

    Je débute dans le langage VBA-E. Dans la cadre de mon travail j'ai développé le code suivant pour permettre l'enregistrement automatique d'un classeur dans un dossier C:\CPR\SCORE.

    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
    Sub SAUVEGARDE()
    ' Affichage d'une feuille de saisie
    Sheets("Saisie complémentaire").Visible = True
    Sheets("Saisie complémentaire").Select
    ' Affectation de la valeur contenue dans B3 à la variable Radical
    Dim Radical As Variant
    Range("B3").Select
    Radical = ActiveCell.FormulaR1C1
    ' Suppression des alertes avant l'enregistrement
    Application.DisplayAlerts = False
    ' Enregistrement du fichier sous le non de la variable dans C:\CPR\SCORE
    ChDir "C:\CPR\SCORE"
          ActiveWorkbook.SaveAs Filename:=Radical, FileFormat:= _
              xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
            , CreateBackup:=False
    ' Activation des alertes après enregistrement
    Application.DisplayAlerts = True
    End Sub

    Le programme semble fonctionner correctement sur certains postes de travail MAIS sur d'autres il enregistre dans un endroit différent.
    Comment puis-je m'assurer que la sauvegarde se fera à l'endroit voulu ?

    Je travaillle sous Excel 2000 (9.0 3821 SR-1)

  2. #2
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    667
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2007
    Messages : 667
    Points : 870
    Points
    870
    Par défaut
    Bonjour,
    il me semble avoir lu dans l'aide (pas excel la ou je suis) que chdir changeait uniquement le repertoire mais pas le disque par defaut. Peut etre que ca vient de la.

    Essaye peut etre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim Chemin as string
    '
    'code...
    '
    '
     
    Chemin = "C:\CPR\SCORE\" & Radical & ".xls"
          ActiveWorkbook.SaveAs Filename:=Chemin, FileFormat:= _
              xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
            , CreateBackup:=False

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 11
    Points
    11
    Par défaut
    Bonjour !

    Merci pour la réponse.
    J'ai essayé mais cela ne marche toujours pas. L'enregistrement se fait sur D:\

    Mon objectif est de sauvegarder le classeur (qui en lecture seule) dans C:\CPR\SCORE avec pour nom de classeur la valeur enregistrée dans la variable "Radical".

    Je reste dans l'attente d'une solution.

  4. #4
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    bonjour à tous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sheets("Saisie complémentaire").Visible = True
    Sheets("Saisie complémentaire").Select
    ' Affectation de la valeur contenue dans B3 à la variable Radical
    Dim Radical As Variant
    Range("B3").Select
    Radical = ActiveCell.FormulaR1C1
    Je ne comprends pas tu rends visible une feuille que tu ne masque pas à la fin

    Il n'est pa utile de la rendre visible et de la selectionnée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim radical as string
    radical = sheets("Saisie complémentaire").range("B3").value
    ces deux ligne devraient remplacer les 6 lignes plus haut

    ensuite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWorkbook.SaveAs Filename:="C:\tonchemin\" & Radical & ".xls"
    bonne soirée
    Wilfried

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 14
    Points : 11
    Points
    11
    Par défaut ça marche ! * Merci !


    A Tonton Fred,
    Ta proposition marche contrairement à ce que j'ai d'abord précédemment indiqué. J'ai fait une erreur en modifant le code sur le Filename.
    Toutes mes excuses et merci pour ta contribution.

    Wilfried, merci à toi de m'avoir fait gagner des lignes de code.

    Cordialement,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2002] Difficultés pour le fonctionnement d'une macro
    Par chti'me dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 16/09/2009, 14h09
  2. Fonctionnement d'une macro
    Par Laura-c dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 10/12/2008, 17h22
  3. comment créer une macro d'enregistrements
    Par zalino dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 30/07/2008, 08h44
  4. [VBA-E] une macro qui enregistre mon fichier Excel
    Par Djohn dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 02/03/2007, 11h47
  5. Réaliser une macro qui enregistre le résultat d'une requête
    Par boulette85 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 22/02/2007, 18h36

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