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] Probleme avec l'activate d'un classeur ouvert pour un copy paste


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 54
    Points : 38
    Points
    38
    Par défaut [VBA-E] Probleme avec l'activate d'un classeur ouvert pour un copy paste
    Salut

    Le transfert de mes fichiers excel avec leur code VBA de la maison au boulot ne se passe pas sans probleme. J'ai abandonné l'idée de faire tourner le code sur mon poste de travail macintosh, rien que les controles ne sont pas reconnus...
    Le code a été écrit sous Excel 2003 et j'utilise un PC avec Excel 2000. Et le code VBA qui fonctionnait bien bugg maintenant.
    J'ai découpé le code en toutes petites parties pour localiser l'endroit où ca bugg, et.... c'est une simple activation de feuille au tout début du code avant collage d'une selection.
    Voilà le code qui démarre à la validation d'un formulaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     Private Sub CommandButtonUsfDAAdress_Click()
     
    'Selectionne et copie les données sources
     
    UserFormDAAdress.Hide
    Workbooks(TextBoxDAFich.Value & ".xls").Sheets(TextBoxDAOnglet.Value).Activate
    ActiveSheet.Range("A5:AZ5").Select
    ActiveSheet.Range(Selection, Selection.End(xlDown)).Select
    olignes = Selection.Rows.Count 'Recupere le NB de lignes sources initiales pour l'historik
    Selection.Copy
     
    'Colle la selection
     
    Workbooks("ConvertAchapp.xls").Sheets("ImportDA").Activate
    La sélection dans le fichier source se passe nickel. C'est la derniere ligne que le déboggueur surligne.

    Sur le web, une piste suggere un probleme d'instance, que les 2 fichiers doivent etre ouverts dans la même instance. J'ai essayé d'ouvrir les deux fichiers à partir de Fichier > Ouvrir de Excel plutôt qu'en cliquant sur le fichier dans l'explorateur Windows mais ca ne change rien.

    La macro automatique sur Excel 2000 propose un Windows(nomdufichier).Select mais ca ne resoud pas mon probleme non plus.

    Je vais encore essayer de faire ouvrir le fichier par le code.
    Sinon peut etre un probleme de code pas au bon niveau pour agir sur 2 fichiers mais je vois pas trop comment faire.

    Si quelqu'un a une idée, j'aimerais tellement pouvoir utiliser ce fichier à mon boulot pour le traitement des données plutôt qu'à la maison

  2. #2
    Membre habitué Avatar de conconbrr
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Points : 198
    Points
    198
    Par défaut
    Déjà moi je te dirais d'éviter de sélectionner... Passe plutôt par une variable objet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    dim rgTaPlage as range
    set rgTaPlage=ActiveSheet.Range("A5:AZ5")
    set rgtaplage=rgtaplage(rgtaplage,rgtaplage.end(xldown))
     
    rgtaplage.copy destination:=Workbooks("ConvertAchapp.xls").Sheets("ImportDA").range("qqch")
    Il est possible que je me sois un peu lourdé sur la définition de rgtaplage étant donné que je suis fatigué et que j'ai pas testé mais en tt cas l'idée est là

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 54
    Points : 38
    Points
    38
    Par défaut
    Merci Conconbr

    Je vais essayer ca tout à l'heure !

    Je croise les doigts ...

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 54
    Points : 38
    Points
    38
    Par défaut
    Arggh ca ne marche toujours pas, il fait bien la sélection, mais il n'arrive pas à revenir sur le premier classeur; il y a vraiment quelque chose de louche.

    Sur une autre feuille du meme fichier,j'ai presque le meme code, et il fonctionne sans probleme....

    Un truc qui me met la puce à l'oreille, c'est un message lorsque je selectionne le bouton de commande de la feuille qui bugg qui dit :
    "Impossible de sortir du mode création, le controle ne peut pas être créé."

    JE lache l'affaire, je vais recommencer à partir d'une version qui n'est pas passé par le macintosh, peut etre c'est ca qui a tout cassé.

    MErci Conconbr pout ta réponse, je connaissais pas la syntaxe de [copy destination:=]

  5. #5
    Membre habitué Avatar de conconbrr
    Inscrit en
    Février 2006
    Messages
    198
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 198
    Points : 198
    Points
    198
    Par défaut
    De nada ça évite de sélectionner les cellules.
    J'insiste encore sur le fait d'éviter de sélectionner les objets,ce qui te fait gagner beaucoup de temps de calcul et améliore la lisibilité et la qualité de ton code

Discussions similaires

  1. [VBA-E] Problème avec Sendkeys
    Par zoumzoum59 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 31/05/2006, 21h02
  2. [VBA-E]Probleme avec la fonction Range
    Par pec dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 24/04/2006, 11h36
  3. [VBA-E] probleme avec la fonction countif
    Par adamm dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 18/02/2006, 09h23
  4. [VBA WORD] Probleme avec un .dot
    Par jagdjg dans le forum VBA Word
    Réponses: 6
    Dernier message: 18/01/2006, 11h07
  5. [VBA-E] problème avec le sendkeys
    Par darkpocket dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/02/2005, 14h25

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