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 :

Problème récupération des données


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Octobre 2012
    Messages : 7
    Par défaut Problème récupération des données
    Bonjour à tous et merci d'avance à celles et ceux qui essayeront de me donner un coup de main.

    Je pense qu'il sera plus simple que je vous donne mon code afin que vous puissiez comprendre ma demande.

    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
    19
    20
    21
     
        Range("B40").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts d''acquisition'!R23C6"
        Range("C40").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts d''acquisition'!R23C7"
        Range("B41").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts d''acquisition'!R29C6"
        Range("C41").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts d''acquisition'!R29C7"
        Range("B44").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts de production des PI'!R37C6"
        Range("C44").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts de production des PI'!R37C7"
        Range("B47").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts de production'!R36C6"
        Range("D47").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts de production'!R36C8"
        Range("B50").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts de production'!R42C6"
        Range("D50").Select
        ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls]Coûts de production'!R42C8"
    Les cellules que je demande de remplir avec le fichier précédent sont "#REF!"
    voilà ce qui est écrit dans une cellule (La première , la B40 ) :
    "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\[CochetMai13.xls]Coûts d''acquisition]CochetMai13.xls]Coûts d''acquisi'!$F$23"

    Je ne comprends pas pourquoi il ne prends pas le bon chemin comme indiqué dans le code.
    Même lorsque j'essaye de remettre le chemin correctement "à la main" dans le fichier , il ne trouve pas.
    Je corrige donc à la main en mettant :
    "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls\[Coûts d''acquisition]'!$F$23"
    Et voilà qu'il change à nouveau tout seul pour :
    "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls\[Coûts d''acquisition]]Coûts d''acquisition]'!$F$23"

    Est ce que quelqu'un aurait une idée, ou c'est déjà arrivé à quelqu'un?

    Cordialement

  2. #2
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 430
    Billets dans le blog
    11
    Par défaut
    Bonjour,

    Ton problème doit venir de tes crochets, il faut utiliser les crochets quand on a des espaces dans les noms de fichiers, d'onglets, etc. Et dans ton cas, tes onglets ont des espaces, mais ils ne sont pas tous dans des crochets.

    @+.

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Octobre 2012
    Messages : 7
    Par défaut
    Merci de ta réponse , je ne saisis pas vraiment, de quels crochets , tu parles.

    J'ai essayé de changer la position de mes crochets , malheureusement , il y a une erreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls].[Coûts d''acquisition']!R23C6"
    Erreur d'exécution 1004 :
    Erreur définie par l'application ou par l'objet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "='C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls.[Coûts d''acquisition']!R23C6"
    Erreur d'exécution 1004
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls].Coûts d''acquisition'!R23C6"
    Pas de bug , mais ne fonctionne pas (Erreur mentionné dans le 1er post : "#REF")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls][Coûts d''acquisition']!R23C6"
    Erreur d'exécution 1004.

    Je ne vois pas comment faire d'autre

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 430
    Billets dans le blog
    11
    Par défaut
    Il me semble qu'il y a une erreur :
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveCell.FormulaR1C1 = "='[C:\Users\Mathieu\Documents\OfficeCochet\OfficeCochet\CochetMai13.xls].[Coûts d''acquisition]'!R23C6"

    @+.

  5. #5
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 170
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 170
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Lorsque l'on fait référence à une cellule d'un autre classeur, voici la syntaxe lorsque le classeur référencé est ouvert
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =[TimeSheet_db.xlsx]Db!$B$2
    Soit [NomClasseur]NomFeuille!Cellule
    Et voici quand le classeur référencé est fermé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ='z:\Partage\Dropbox\TimeSheet\[TimeSheet_db.xlsx]Db'!$B$293
    Soit 'Chemin\[NomClasseur]NomFeuille'!Cellule
    Les apostrophes sont placées si les noms sont espacés
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Petit détail mineur : dans ton code, les Select sont inutile et chaque paire de ligne peut être écrite en une seule ligne, ce qui allègera ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Range("B40").Select
    ActiveCell.FormulaR1C1 = "..."
    Peut être avantageusement remplacé par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("B40").FormulaR1C1 = "..."
    Ce qui non seulement allège le code mais aussi améliore la vitesse et l'aspect visuel à l'exécution.

  7. #7
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Octobre 2012
    Messages : 7
    Par défaut
    Un grand merci à Philippe Tulliez qui a résolu mon problème.

    Merci à tous ceux qui ont essayé de m'aider.
    Au plaisir.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/08/2007, 10h25
  2. [MySQL] problème de caractères lors de la récupération des données
    Par lecail65 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 02/08/2006, 16h45
  3. Réponses: 31
    Dernier message: 27/07/2006, 13h51
  4. Réponses: 22
    Dernier message: 05/07/2006, 15h21
  5. problème récupération de données dans des fichiers .DAT
    Par indymontpellier dans le forum Bases de données
    Réponses: 4
    Dernier message: 13/04/2006, 07h54

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