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 :

[Vba-E] Problème incompréhensible


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club Avatar de antoinelavigne
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Points : 33
    Points
    33
    Par défaut [Vba-E] Problème incompréhensible
    Bonjour,
    l'autre topic étant très confus au niveau de mes problèmes, en voilà un autre, plus clair, et surement plus intéréssant.

    J'ai un problème dans mon code, Erreur d'éxéuction 9 - L'indice n'appartient pas à la sélection, pourtant on m'a aidé également sur d'autres forums mais impossible de voir ce qui ne va pas. Voilà mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Vbatest()
    var = ActiveWorkbook.Name
    Application.ScreenUpdating = False
    Workbooks.Open "E:\Automatisation V2\V2 réalisé Juin.xls", , True
    Workbooks("E:\Automatisation V2\V2 réalisé Juin.xls").Worksheets("RealAnnu").Range("D5") _
     = Workbooks(var).Worksheets("Synthese").Range("B4").Value
    Workbooks.Close
    Application.ScreenUpdating = True
    msgbox (var)
    End Sub
    De plus ca m'ouvre le workbook 'V2 réalisé Juin.xls' dans une fenetre et non pas en lecture seule, ce que je ne veux pas. Please help me!

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    je sais pas si ça peut venis de ça (sincèrement jepense pas) mais ya une faute de frappe dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Appliaation.ScreenUpdating = True

  3. #3
    Nouveau membre du Club Avatar de antoinelavigne
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Points : 33
    Points
    33
    Par défaut
    Cest une faute qui n'est pas dans mon code et que j'ai commise en le recopiant désolé !

  4. #4
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Points : 83
    Points
    83
    Par défaut
    salut!

    tu devrais en ce qui concerne :
    De plus ca m'ouvre le workbook 'V2 réalisé Juin.xls' dans une fenetre et non pas en lecture seule
    lire dans l'aide en ligne "OpenLinks, méthode" je pense que ça t'interessera!

    a +

  5. #5
    Nouveau membre du Club Avatar de antoinelavigne
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par gootsu
    salut!

    tu devrais en ce qui concerne : lire dans l'aide en ligne "OpenLinks, méthode" je pense que ça t'interessera!

    a +
    J'arrive pas à trouver des informations sur cette méthode ... mais est-ce que ca résoudra mon problème ? Merci d'avance.

  6. #6
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Points : 83
    Points
    83
    Par défaut
    dans editeur VBa dans l'aide il y est! tu fais rechercher "OpenLinks"!

    Par contre si ça résoudra ton problème d'indice n'appartient pas à la sélection je ne pense pas! mais pour la lecture seul peut-etre! (je suis pas sur ! )

    je t'aide comme je peux lol

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    l'erreur se produit à quelle ligne?

  8. #8
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Points : 83
    Points
    83
    Par défaut
    essai de mettre ces lignes de codes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Open FileName:="E:\Automatisation V2\V2 réalisé Juin.xls", ReadOnly:=True
    plustot que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Open "E:\Automatisation V2\V2 réalisé Juin.xls", , True
    je pense pas que c'est de là le problème mais on sais jamais! lol
    pour moi ce que t'a tapé est juste!!!

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    Vu le message d'erreur, je dirais que tu as un problème dans les noms de classeur ou de feuille. Donc vérifie bien chaque nom(espaces, accents...)

  10. #10
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    151
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 151
    Points : 83
    Points
    83
    Par défaut
    ah je pense avoir trouvé!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Workbooks("E:\Automatisation V2\V2 réalisé Juin.xls").Worksheets("RealAnnu").Range("D5") _
     = Workbooks(var).Worksheets("Synthese").Range("B4").Value
    Je pense que toi tu veux mettre la valeur de "B4" dans l'autre classeur à "D5" mais je pense qu'il se crée un confli ! c'est à dire qu'il ne peut pas faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("D5") = Range("B4").Value
    donc soit tu rajoute ".value" à Range("D5") soit tu enlèves l'autre!
    Moi je metterai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Workbooks("E:\Automatisation V2\V2 réalisé Juin.xls").Worksheets("RealAnnu").Range("D5").Value _
     = Workbooks(var).Worksheets("Synthese").Range("B4").Value
    Ps: je ne l'ai pas testé! ce ne sont que des suppositions!

  11. #11
    Nouveau membre du Club Avatar de antoinelavigne
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Points : 33
    Points
    33
    Par défaut
    Salut gootsu,
    non marche toujours pas ...

    1/ J'ai rajouté .Value pour créer l'équilibre entre les 2 camps lol mais ca me fait la même erreur. Pourtant le nom du classeur est bien stocké dans la variable 'VAR', j'ai testé avec un msgbox ca marche bien.

    2/ J'ai essayé ReadOnly:=True à la place de TRUE mais ca me fait le même résultat, la même erreur, mais je crois que le fait que le classeur s'ouvre quand même est normal!

    Openlinks ne maide pas, dailleurs je comprends rien à cette méthode !

    Voilà ou j'en suis, bloqué sur un problème trop bête . Niveau code, jen suis là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Vbatest()
    var = ActiveWorkbook.Name
    Application.ScreenUpdating = False
    Workbooks.Open "E:\Automatisation V2\V2 réalisé Juin.xls", , True
    Workbooks(var).Worksheets("Synthese").Range("B4").Value = Workbooks("E:\Automatisation V2\V2 réalisé Juin.xls").Worksheets("RealAnnu").Range("D5").Value
    Workbooks.Close
    Application.ScreenUpdating = True
    End Sub

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    Tu as vérifié tous les noms de classeur et de feuilles?

  13. #13
    Nouveau membre du Club Avatar de antoinelavigne
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Points : 33
    Points
    33
    Par défaut
    Linda > Oui encore une fois à l'instant. Tout est bon ! Cest pour ca que je regarde pas mal au niveau de l'ouverture du classeur mais bon ..

    Citation Envoyé par Gootsu
    Je pense que toi tu veux mettre la valeur de "B4" dans l'autre classeur à "D5" mais je pense qu'il se crée un confli ! c'est à dire qu'il ne peut pas faire :
    Non c'est le contraire, la valeur de

    D5 de la feuille 'RealAnnu' du classeur E:\Automatisation V2\V2 réalisé Juin.xls

    vers ->

    B4 de la feuille 'Synthese' du classeur ouvert , cest a dire stocké dans VAR.

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    137
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 137
    Points : 130
    Points
    130
    Par défaut
    faut mettre B4 en premier alors...

  15. #15
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 338
    Points : 4 295
    Points
    4 295
    Par défaut
    Ton problème est sur quelle ligne quand tu fait un débogage ?
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  16. #16
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Au lieu de mettre
    Workbooks.Open "E:\Automatisation V2\V2 réalisé Juin.xls", , True
    mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Open filename:="E:\Automatisation V2\V2 réalisé Juin.xls", , True
    Mais tu n'as à aucun moment répondu à linda15975 qui posait la seule bonne question : SUR QUELLE LIGNE TON ERREUR ?

    Si pouvais répondre à ça, tu aurais tout de suite 20 réponses inutiles de moins

    (Je sais, je suis énervé Bon, alors n'en rajoute pas !)
    A+

  17. #17
    Nouveau membre du Club Avatar de antoinelavigne
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 82
    Points : 33
    Points
    33
    Par défaut
    Laissez, je viens de résoudre le problème tout seul (après un acharnement ). Voilà le code qui marche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Sub VbaTest()
    Var = ActiveWorkbook.Name
    Source = "E:\Automatisation V2\V2 réalisé Juin.xls"
    Workbooks.Open Source, , True
    ValSource = ActiveWorkbook.Worksheets("RealAnnu").Range("I34")
    ValSource = format(ValSource,"#0.0") 
    Workbooks(Var).Worksheets("Synthese").Range("B4").Value = ValSourceActiveWorkbook.Close
    End Sub

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

Discussions similaires

  1. [VBA-A] Problème Suppression enreg en cours
    Par _developpeur_ dans le forum Access
    Réponses: 2
    Dernier message: 17/10/2005, 20h08
  2. VBA ... CurrentRecord ... Problème d'utilisation
    Par snoopy69 dans le forum Access
    Réponses: 7
    Dernier message: 17/10/2005, 10h53
  3. Problème incompréhensible
    Par bugalood dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2005, 11h49
  4. [VBA] [WORD] problèmes avec NUMPAGES
    Par meufeu dans le forum VBA Word
    Réponses: 9
    Dernier message: 08/08/2005, 16h24
  5. VBA Importation problème d'INUPUT BOX
    Par snoopy69 dans le forum Access
    Réponses: 8
    Dernier message: 21/12/2004, 16h36

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